home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Info-Mac 3
/
Info_Mac_1994-01.iso
/
Abstracts
/
Development⁄Source Abstract
< prev
next >
Wrap
Text File
|
1993-12-31
|
154KB
|
4,053 lines
Abstracts from files in info-mac/dev/src as of Sun Dec 26 00:42:53 PST 1993
#### BINHEX ad-invert-shapes-101-c.hqx ****
From: joe@clipper.cb.att.com
Date: Sat, 9 Oct 93 15:44:10 EDT
Subject: InvertShapes 1.0.1
This is version 1.0.1 of the InvertShapes AfterDark
screensaver module. This version corrects the "random"
feature and the credit string.
Source code is included.
- j.t.judge
#### BINHEX adobe-premiere-developer-c.hqx ****
Date: Tue, 5 May 92 14:39 +1200
From: "Lawrence D'Oliveiro, Waikato University, Hamilton, NZ"
Subject: info-mac/tech/adobe-premiere-developer.hqx
The following archive includes information and sample code (in MPW C
and assembler) for writing your own add-ons for Adobe Premiere. You can
create custom visual transition effects, video filters, and audio filters.
I found this originally posted on AppleLink by Randy Ubillos, author
of Premiere.
Lawrence D'Oliveiro, Waikato University, Hamilton, New Zealand.
ldo@waikato.ac.nz
--------------------------------------------------------------------------------
#### BINHEX apple-event-interface-plog.hqx ****
Date: Mon, 19 Oct 1992 08:29:16 +0100
From: Stephen.Cooper@csd.uu.se (Stephen Cooper)
Subject: AE Interface.pl v1.01
This code works only with LPA MacProlog 4.5 or better.
AE Interface.pl is the source code for a prolog interface to Apple events.
This program allows retreiving succesive answers to prolog goals and
translation of the answers to e.g., HyperTalk commands. The answers are in
text format, perfect for working with HyperCard or SuperCard.
-----------------------------------------------------------
Stephen Cooper +46-(0)18-18 10 73 (voice)
Computing Science Dept +46-(0)18-52 12 70 (fax)
Uppsala University, Sweden stephen@csd.uu.se
#### BINHEX application-menu-addition-as.hqx ****
Date: Mon, 11 Oct 93 15:33 +1300
From: "Lawrence D'Oliveiro, Waikato University, Hamilton, NZ"
Subject: info-mac/UserInterface/appmenu-additions-as.hqx
Hi.
Enclosed is a small update to my Application Menu scripting addition for
AppleScript. The code is the same as before, but I have changed some resource
attributes to try to avoid occasional crashes that could occur with the
previous version.
Please replace your current copy of the archive with this version.
Lawrence D'Oliveiro
Computer Services Dept
University of Waikato
Hamilton
New Zealand
--------------------------------------------------------------------------------
#### BINHEX arashi-11-c.hqx ****
Date: Thu, 22 Jul 1993 23:07:20 GMT
From: Juri Munkki <jmunkki@vipunen.hut.fi>
Think C 5.04 source for Arashi 1.1, a vector graphics game that
requires 256 colors or shades of gray.
Juri Munkki
jmunkki@hut.fi
#### BINHEX arashi-storm-c.hqx ****
Date: Tue, 1 Dec 1992 11:22:29 GMT
From: Juri Munkki <jmunkki@vipunen.hut.fi>
This file contains the complete source code to the Project Arashi/STORM
game. You need Think C 5.0 or later to use it.
This is the same version of the source that is at ics.uci.edu.
If you want to write an arcade game for the Macintosh, looking at this
program should be quite useful.
Juri Munkki
jmunkki@hut.fi
#### BINHEX ars-magna-II.hqx ****
Date: Fri, 24 Sep 1993 11:47:34 -0800
From: mxmora@unix.sri.com (Matthew Xavier Mora)
Subject: Ars Magna II
--========================_7523546==_
Content-Type: text/plain; charset="us-ascii"
Enclosed is a new version of Ars Magna called Ars Magna II. I recomplied
Mike Morton's ars.c code to use think's console library. This makes it a
little more compatible but its still just a C program with command line
interface.
I gave it a new signature and icon to keep it separate for the other version.
I did this because someone here needed to use ars magna and the old version
would trash his screen. Hopefully some one will give it a good interface
and make it a real mac program. I just don't have the time.
Matt
--========================_7523546==_
Content-Type: application/mac-binhex40; name="Ars_Magna_II.sea"
#### BINHEX ars-magna-c.hqx ****
Date: Thu, 4 Mar 1993 07:42:56 -0500
From: Monty Solomon <monty@proponent.com>
Subject: Ars Magna source
Enclosed is the source code for Mike Morton's Ars Magna program.
Monty
---
# Monty Solomon / PO Box 2486 / Framingham, MA 01701-0405
#### BINHEX artabrot-11-c.hqx ****
From: warnergt@aloft.att.com
Date: Tue, 23 Nov 93 21:08:23 EST
ARTAbrot - Apple Real-Time Architecture Mandelbrot Program
Version 1.1
by George Warner
11/22/93
warnergt@aloft.att.com
REQUIREMENTS:
68020 or greater
ARTA equipped Macintosh (Quadra 840av, Centris 660av, or Mac with ARTA
plug-in board.
1. WHAT IT IS: ARTAbrot is a Mandelbrot program that it uses the AT&T
DSP3210 in ARTA to perform the intensive Mandelbrot calculations.
2. SOURCE CODE TOO! Complete source code is provided. For those who
would like some sample ARTA source code (which is scarce at the time of
this release). The DSP3210 source code is in file mbrot.s. All of the host
DSP function calls are in brotcode.c. For those of you considering DSP
programming, take a look at the mbrot.s DSP source code. This is DSP3210
assembly code, but it is very much like C code -- one of the very nice
features of the DSP3210.
Release 1.1 11/22/93 Added support for larger windows, resizable windows,
and background processing.
Release 1.0 08/23/93 First version.
#### BINHEX async-sound-sample-pas.hqx ****
Date: Sat, 27 Mar 1993 14:30:39 -0800
From: westrom@unixg.ubc.ca
Subject: Pascal source code: async sound production
I was trying to get Think Pascal 4.0.2 to play anynchronous sounds (sounds
that play while other things are happening). It turns out that you have to
remove the [D] Debug compile option or else the machine crashes.
On the road to discovering this, I made a 'minimal' anynchronous sound
playing
program. A sample sound playing program is provided by Jim Reekes in the
DTS
folder of apple.com, but it is very elaborate and complex. What I offer
here
is a minimum piece of source code that a beginner could look at to see the
essential elements of async sound production, done by-the-book (vol VI of
Inside Apple, in this case).
--------
Marv Westrom
Faculty of Education, UBC
Vancouver, B.C. Canada V6T 1Z4
#### TEXT atp-sample-code-c.txt ****
From: Stuart Cheshire <cheshire@cs.stanford.edu>
Subject: Re: Looking for some sample appletalk ATP code...
Date: Wed, 2 Sep 92 18:11:08 GMT
In article <1992Sep1.033635.28604@sunb10.cs.uiuc.edu> Alex Bratton,
bratton@sparc3.cs.uiuc.edu writes:
>If you have some sample code (ATP) that opens, registers, and dumps some
>data, I'd really appreciate seeing it. This has been bugging me for a
while
>and I think I need to look at some working code to see what I'm missing.
Here is some more sample code, which opens and registers an ATP socket.
It is from the Macintosh User Authenticator mentioned in a previous post
be me.
The code is written for Think C 5.
#include <Traps.h>
#include <GestaltEqu.h>
#include <Folders.h>
#### BINHEX auto-bin-c.hqx ****
From: mxmora@unix.sri.com (Matthew Xavier Mora)
Subject: AutoBin (a drag and drop Binhexer with source)
Date: Thu, 9 Dec 1993 13:21:47 -0800
--========================_6876772==_
Content-Type: text/plain; charset="us-ascii"
Enclosed is AutoBin. Autobin is a program based on dropshell that
will binhex any file dropped on top of it. Since I didn't write very
much of the actual code, included the source so other can benefit too.
(and hopefully modify it and make it better.)
Xavier
--========================_6876772==_
Content-Type: application/mac-binhex40; name="AutoBin_w=src.sea"
Content-Disposition: attachment; filename="AutoBin_w=src.sea"
#### BINHEX bob-15-c.hqx ****
Date: Sat, 2 Oct 93 23:08:11 -0700
From: tsyang@dec-9.CE.Berkeley.EDU (Tzong-Shuoh Yang)
Subject: Bob15.hqx - Bob Programming Language (Think C source)
This is the Tinnk C 6.01 version of Bob 1.5. For details,
please see article
Betz, David.
"Your own tiny object-oriented language: C++? Smalltalk?
What about Bob? (an interpreter formed from C++ and Lisp)
(tutorial)", Dr. Dobbs Journal v16, n9 (Sept, 1991):26
(8 pages).
Bob was written by:
David Betz
P.O. Box 144
Peterborough, NH 03458
(603) 924-4145
Bob is available free of charge for non-commercial use. If
you're interested in using Bob commercially, please contact him
at the above address.
The original source codes are written in Microsoft C and can be
obtained by anonymous ftp from ftp.mv.com.
Have fun.
T. S. Yang (tsyang@ce.berkeley.edu)
================================================================
#### BINHEX c-interp-c.hqx ****
Date: Wed, 2 Jun 1993 10:15:23 -0600
From: cshotton@oac.hsc.uth.tmc.edu (Chuck Shotton)
Subject: C Interpreter Source Code
C_Interp.sit contains the complete Think C source code for an interpreter
of a subset of C. It is implemented as a subroutine call that can be
embedded in any application, making it extremely easy to add scripting to
an existing application. Callbacks from the interpreted C code to the
calling application can be made. The source should compile without changes
on any Unix host as well. See the enclosed documentation for more details.
Note: I am not the original author of this code, but I have modified it to
create a stand-alone library function. See docs for credits.
---
#### BINHEX calc-1247-c.hqx ****
Date: Thu, 14 Oct 93 00:06:24 -0700
From: tsyang@dec-7.CE.Berkeley.EDU (Tzong-Shuoh Yang)
Subject: calc-1.24.7.hqx a C-like calculator (Think C src)
This is Think C 6.01 port of David Bell's Calc 1.24.7 program.
Calc is arbitrary precision arithmetic system that uses a C-like
language. Calc is useful as a calculator, an algorithm prototyped and
as a mathematical research tool.
The calc language is a C-like language. The language includes commands
such as variable declarations, expressions, tests, labels, loops, file
operations, function calls. These commands are very similar to their
counterparts in C.
A rich set of builtin functions is provided. Fundamental builtin data types
include integers, real numbers, rational numbers, complex numbers and strings.
By use of an object, one may define an arbitrarily complex data types.
One may define how such objects behave a wide range of operations such
as addition, subtraction, multiplication, division, negation, squaring,
modulus, rounding, exponentiation, equality, comparison, printing and so
on.
Copyright (c) 1992 David I. Bell
Permission is granted to use, distribute, or modify this source, provided
that this copyright notice remains intact.
Send calc comments, suggestions, bug fixes, enhancements and interesting
calc scripts that you would like you see included in future distribu-
tions to:
dbell@pdact.pd.necisa.oz.au and chongo@toad.com
Enjoy!
====================== hqx file starts here =====================
#### BINHEX canimcursor-10b4-c.hqx ****
From: k044477@hobbes.kzoo.edu (Jamie R. McCarthy)
Subject: /source/c/canimcursor-10b4.hqx
Date: Mon, 14 Sep 92 13:56:45 EDT
This Compact Pro archive contains the source code for CAnimCursor,
a public domain Think C 5 class that provides easy, flexible handling
of animated cursors. The Think Class Library is not required. This
is the fourth beta. (It's quite stable and hasn't crashed in months,
but I'm still calling it beta because of a minor anomaly which I
haven't resolved yet.)
CAnimCursor uses an 'acur' resource to determine which cursors to
display; the animation speed and a few other variables are changed
by method calls. Both color and B&W are supported. The interface
can be as simple as initializing the object with the resource ID of
your 'acur', and calling startAnimating() and stopAnimating() at the
appropriate times.
CAnimCursor's best feature is that it is very good about doing the
Right Thing (tm). For example, if your 'acur' points to color
cursors and the Mac is B&W, it will pull the B&W bitmaps out of the
'crsr's. If you call startAnimating() twice, the second call will
have no effect. And so on.
CAnimCursor will not call SetCCursor at interrupt time, since that
trap relies on the heap being good, and will fail if the interrupt
occurs during a memory manager reorganization. This does not happen
often, but one crash is one too many.
Also included are CQixableCursor, a subclass which optionally draws a
little 'Qix' over your cursors; subclasses of three TCL core classes
which will prevent the cursor from being reset each time through the
event loop; a short sample subclass; and four sample cursors,
including a smooth beachball and a color spinning earth. (I stole
the earth from Stefan Bilaniuk's free extension "Earth," also at
sumex-aim. I feel no guilt because I guess he stole it from someone
else ;-), and because I colorized all 26 frames by hand, phew!)
Extensive (indeed, ponderous) comments explain proper usage, and there
are even one or two comments in the code itself. Plus, it comes with
a toll-free technical support number, which I figure is a pretty good
deal for something in the public domain, eh?
#### BINHEX change-creator-type-15-c.hqx ****
Date: Sun, 26 Sep 93 13:11:14 CDT
From: jemian@tmnxt1.iit.edu (Pete Jemian)
Subject: [*] ctc v1.5 (ChangeTypeCreator + change EOLs, too!)
ChangeTypeCreator.c
Change the file type and creator of any file dropped onto
this program. Prompts for the file type and creator, and
changes all files dropped at the same time to the same type
and creator.
Written by Brian Bechtel, based on code by Juri Munkki
Feel free to use the code in your programs.
Modified by Pete R. Jemian, Late-Nite(tm) Software
Option was added to convert TEXT files to the
chosen system of EOL (end-of-line) characters. Note that EOLs
on DOS files are <CR><LF> (VAX also uses this EOL format)
on Mac files are <CR>
on UNIX files are <LF>
If you aren't bothered by this, that's just great. If you
are, this little hack will surely help. Very useful for
moving TEXT files between DOS, Mac, and UNIX machines
by diskNet (copy file onto disk, remove disk, sneaker it
to other machine, ...).
BTW: Set the application's size to that of the largest file
that you expect to convert EOLs. The EOLconvert code
reads the entire file into memory at one time, then does
the conversion as the file is re-written.
WARNING:
If you don't know what you are doing, things *could* get
pretty fouled up. They might not. UNDO is not supported.
See the source code to determine *exactly* what is done.
The problem that *could* occur is that you mistakenly select
a non-TEXT file along with other TEXT files and convert them
all to type TEXT *and* convert the EOL characters to the
selection of your choice. That's the danger. Don't do it.
You are unprotected against goofball errors like this.
-------------------><cut here><-----------------------------
#### BINHEX chassis-431-c.hqx ****
Date: Mon, 9 Nov 92 13:57:44 -0500
From: cah0@gte.com (Charles Hoffman)
Subject: Chassis 4.3.1 retransmit 01 of 10
The original file is a Mac folder, which was compressed
with Stuffit, then reformatted with BinHex. The result
was broken into 10 pieces of about 60K with the unix
"split" command.
CHASSIS
Chassis is a sample application which you can use as the
basis for your own simple applications on a Macintosh. It
is written in THINK C (all source provided). It is not object
oriented, but is highly structured. A flowchart is provided
in MacDraw format. Chassis is helpful for small applications
such as calculations, simple text processing, or adding a Mac
interface to an existing program. It also is a good source
of sample code which actually runs.
Release 4.3.1
Contains a small fix to enable running on Mac Plus, major
changes to print routines, small fixes for cursor behavior,
and some changes to scrolling in Help routines.
#### BINHEX chat-11-pas.hqx ****
Date: Sat, 12 Dec 1992 12:00:45 +0800
From: Peter N Lewis <peter@ncrpda.curtin.edu.au>
Subject: source/pascal/chat-110.hqx
This is the pascal source for Chat 1.1.0, a background only application
that lets Macs with MacTCP 1.1 serve as a very primitive IRC.
The source is very simple, only around 500 lines, and could be used
as example code if you wanted to write your own MacTCP server.
Chat is free and should run under System 6 or 7, and requires
MacTCP 1.1 or later.
Hope its useful,
Peter.
Chat 1.1.0 Copyright 1992, Peter N Lewis <peter@cujo.curtin.edu.au>
#### BINHEX cheese-toast-10-c.hqx ****
From: jbum@netcom.com (Jim Bumgardner)
Subject: CheeseToastSource10.sit.hqx
Date: Wed, 18 Aug 93 8:22:55 PDT
Cheese Toast 1.0 by Jim Bumgardner jbum@netcom.com
Cheese Toast is an asteroids-inspired game that is similar to
Maelstrom except that your ship is a teapot...
This is the Think-C source code. You will also need the files
in CheeseToast10.sit in order to run the game under Think C.
CheeseToast requires a color Mac with a 13" monitor and 32-bit
quickdraw.
#### BINHEX clut-fader-c.hqx ****
From: kenlong@netcom.com (Ken Long)
Subject: _clut_fade_demo.sit
Date: Mon, 20 Dec 1993 18:20:17 -0800 (PST)
Dear MacGifts People:
Here is a PD demo of a 'clut' fader in Think C 5. Put together by Jonas
Englund (busjohnny@aol.com) from two fade routines
(FadeToBlack/FadeToNormal) which I sent him.
On launch, it puts up a dialog with two buttons in it: "Fade" and "Done."
If you click "Fade" it fades to black at a 128 speed, waits 120 ticks and
fades back in at 200 speed. Hit "Done" and it exits to shell.
The fade rate can be set from 1 to ?????? - however many ticks you want
to wait. Set in and out at 1 and it flashes the screen.
-Ken-
----------------------------------------------------------------------------
#### BINHEX control-panel-tester-70-c.hqx ****
Date: 04 Mar 1993 13:07:09 -0500 (CDT)
From: Evan Olcott <EOLCOTT@vx.cis.umn.edu>
Subject: Cdev Tester 7.0
/***************
*
* System 7.0 Control Panel tester
*
* )1993 Triplo Software
*
****************/
The Control Panel tester is a source code file that you can use to test
your cdev code resource files under the THINK C 5.0 environment with little
difference from the operating system.
Any comments, questions, bugs, etc. please report them to:
Triplo Software
c/o EOLCOTT@vx.cis.umn.edu
If you think I expect money from this, you're crazy. It's freeware, I guess.
Have fun. Just credit me where you think it's due.
----------splice 'n' dice here------------
#### BINHEX controls-gh.hqx ****
Date: Fri, 22 Oct 93 16:55 CST
From: HOWES@chem.wisc.edu
Subject: [*] Submission of Controls GH
Greetings,
Enclosed you will find a pair of control definitions ('CDEF's)
I wrote for a small application I'm writing. I'm making them and
their source code available in the hopes that other programmers
might find them useful.
Slide Control GH:
A basic slider type control with a thumb and page up and page
down regions. For use in setting some continually varying
value.
Flag Control GH:
A toggle switch functionally identical to the triangle found
in Finder list views. For use in indicating expand/contraction
of a view or window.
These are to be considered free for use by anyone and feel
free to modify them to fit your own taste in your own product;
that's why I included the source code.
Bug reports/fixes to:
Glenn R. Howes
1101 University Ave.
Madison, WI 53706
howes@bert.chem.wisc.edu
suggested name: controls_gh_cpt.hqx
#### BINHEX crooked-mouse-10-c.hqx ****
From: f8dy@netaxs.netaxs.com (Mark Pilgrim)
Subject: Crooked Mouse 1.0 (source code)
Date: Sun, 14 Nov 1993 03:11:39 -0500 (EST)
Crooked Mouse is a fun little INIT which will cause your mouse to move
at an angle 45 degrees counterclockwise from the angle you moved it.
This INIT is free and is distributed under the GNU General Public License;
this archive contains complete THINK C 6.0.1 source code and project files
for the INIT. If you do not have FTP access, e-mail the author for a copy of
the INIT, the source code, or a list of other programs by the same author.
The address is f8dy@netaxs.com.
This code demonstrates the basics of writing and installing a VBL, and the
manipulation of undocumented low-memory globals. This code should work under
any system, with any monitor, on all Macintoshes. Please report any
bugs/comments/suggestions to f8dy@netaxs.com.
Crooked Mouse 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### BINHEX darth-vader-10-c.hqx ****
From: f8dy@netaxs.netaxs.com (Mark Pilgrim)
Subject: Darth Fader 1.0 (source code)
Date: Sun, 21 Nov 1993 04:24:08 -0500 (EST)
Darth Fader will cause your Macintosh to quickly fade all attached screens to
black and back when it beeps. This INIT is free and is distributed under the
GNU General Public License; this archive contains complete THINK C 6.0.1
source code and project files for the INIT. If you do not have FTP access,
e-mail the author for a copy of the INIT, the source code, or a list of other
programs by the same author. The address is f8dy@netaxs.com.
This code demonstrates the basics of INIT initialization and loading,
trap trapping, and advanced gamma work. This code will only work on
monitors with gamma -- the Mac II line, and any color Mac with a non-built-in
monitor. (It has not been tested on a Color Classic; if anyone has one and
feels like testing, please let me know if it works.) Please report any
bugs/comments/suggestions to f8dy@netaxs.com.
Darth Fader 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### BINHEX dcl-ansi-c.hqx ****
From: k044477@hobbes.kzoo.edu (Jamie R. McCarthy)
Subject: dcl-ANSI (all)
Date: Thu, 22 Apr 93 0:45:35 EDT
C's method of declaring variables and functions is one of the most confusing
parts of the language. Even old pros will double- and triple-check their
arrays of pointers. And the pathological cases are truly bizarre:
"int(Int(int(Int)))" declares a function that accepts and returns an int, but
"int(Int(int(int)))" declares a function that accepts another function,
and _that_ function accepts and returns an int. Weird stuff.
"dcl-ANSI" lets you type in a declaration, hit a few keys, and see what it
means, in plain English. Tell it "int (*x[])()" and it tells you x is "type
array[] of pointer to function with undefined parameters returning type int."
It's based on the "dcl" program in section 5.12 of K&R, but, as the name
implies, it fully understands ANSI. (Well, OK, there are a few limitations.
See the readme for details.) And it's public domain.
There are two editions of this utility. It was first created as a BBEdit
extension, because (1) I like BBEdit and (2) BBEdit provides a particularly
nice environment for hacks like this to live in. If you keep BBEdit open
while programming, you may prefer this version. Otherwise, you'll probably
want to use the second edition, the FKEY, because it's simpler: just
select your declaration, hit cmd-C and cmd-shift-9 [*], and the English
explanation is in the clipboard, waiting for you to paste it somewhere.
This file contains both editions and their complete Think C 5 source code.
Suggested archive destination: .../source/c/dcl-ansi.hqx
--
Jamie McCarthy Internet: k044477@kzoo.edu AppleLink: j.mccarthy
#### BINHEX devils-cubes-101-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Devil's Cubes 1.0.1 (source code)
Date: Tue, 14 Dec 1993 18:50:12 -0500 (EST)
The Devil's Cubes are a set of four cubes, each painted with four colors
with some colors repeated. All four cubes are different. The object of
the game is to rotate the four cubes until the top of each Devil's Cube
is a different color than the top of the other three cubes, and likewise
for the bottom, front, and back of each Devil's Cube. Sound simple? Try
it for a few hours.
Devil's Cubes 1.0.1 fixes some technical bugs and makes some changes to the
icon suite; you may need to rebuild your desktop if you already have version
1.0. This game is distributed under the GNU General Public License; this
archive contains complete THINK C source code for the Devil's Cubes
application, as well as complete source code for an external application
used to set up the game's self-integrity checker.
This archive contains both THINK C 5 and THINK C 6 project files. Use
whichever one you wish and throw away the other.
This code handles, among other things, events, menus, apple events, a prefs
file, Gestalt environment checking, asynchronous sounds, hierarchical menus,
dialogs, windows, off-screen bitmaps, file management, standard file dialogs,
and the soon-to-be-famous "cough to continue" modal dialog filter proc. None
of this is very well commented, but feel free to direct any questions to
f8dy@netaxs.com.
Devil's Cubes 1.0.1 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### BINHEX dink-class-c.hqx ****
Date: Tue, 2 Mar 93 08:08:11 -0800
From: blob@apple.com (Brian Bechtel)
Subject: DinkClass
[Downloaded from AppleLink--I'm not the author, Mark Gross is. Contact him
via zsass.markg@applelink.apple.com.]
DinkClass is a small Think C5.0 (and MPW C++) application framework for
system 7 applications.
DinkClass is now offered as shareware.
If you use ANY of it in your own software, then you must pay a one time fee
to Applied Technical Software (ATS) of $45. In return you will get
unlimited rights to distribute any COMPILED programs created using part of
DinkClass source code. However; the distribution of any source code
derived from parts of the DinkClass software MUST BE DONE WITH APPLIED
TECHNICAL SOFTWARE'S CONSENT!!!! (So, give me a call.) You also get, for
the $45, two free maintenance updates of the basic class library, of the
basic demo applications, of the documentation, any extra demo applications
I may have created (DComDemo a CTB demo, for instance), the MPW C++
supporting files (.make, .r, .c files renamed to .cp, etc.), and telephone
and EMail support. Maintenance updates go out in December and July.
The DinkClass ShareWare distribution package includes:
o Think C 5.0 projects with well commented source code for 2 applications
and the Template project.
o Think C 5.0 source files for the base class library.
o Off-line documentation of the key features implemented in the class
library, all conforming to the Feature Oriented Documentation standard
developed. Features documented in this way include:
All the applications, Scrolling Windows, Event parsing, File and I/O
handling, Clip board support, Menu Handling, and more.
o A readme file.
o A directory "Listings" file of what constitutes this ShareWare distribution.
o A shameless flier soliciting contract software development work for ATS.
o The executable form of the CTB demo application.
o This "Posting note"
Feel free to redistribute this shareware package of DinkClass as you wish, but
ALL OF THESE FILES MUST STAY TOGETHER UNALTERED IN ANY RE-TRANSMISSION OR
DISTRIBUTION OF THIS SHAREWARE PACKAGE!!!!!
p.s. it would be nice if someone could but this package in some of the
INTERNET repositories (like SUMEX)
Mark Gross 12/31/92
Applied Technical Software
19548 W. Cambridge Rd.
Mundelein, IL 60060-1005
Telephone: 708.949.0925
Software engineering services in OOD, OOP, C++, C, MacApp, TCL, MPW,
ThinkC. Initial project development intended for transfer to client with
continued technical support. Turnkey, prototype, and consulting projects
accepted.
I know, its another shameless plug.
p.s. If you would like to use DinkClass in an educational setting contact
me for FREE transient licensing arrangements.
--Brian Bechtel blob@apple.com "My opinion, not Apple's"
#### TEXT dir-scanning-sample-c.txt ****
Date: Wed, 2 Sep 92 15:19:54 PDT
From: macmod@SUMEX-AIM.Stanford.EDU (Info-Mac Moderator)
orrow.stanford.edu!stanford.edu!ames!haven.umd.edu!darwin.sura.net!wup ost!micro-heart-of-gold.mit.edu!bu.edu!Shiva.COM!world!aep
From: aep@world.std.com (Andrew E Page)
Newsgroups: comp.sys.mac.programmer
Subject: Re: Directory Scan Revisited dirscan.c (C Code)
Message-Id: <Btyt08.JLL@world.std.com>
Date: 2 Sep 92 19:04:54 GMT
References: <BtwK89.oI@world.std.com>
Organization: The World Public Access UNIX, Brookline, MA
Lines: 625
Apparently-To: info-mac
Resent-To: backmod
Resent-Date: Wed, 2 Sep 1992 15:19:53 PDT
Resent-From: Info-Mac Moderator <macmod@sumex-aim.Stanford.EDU>
Here is the directory scanning code. Written under MPW 3.2.
--------CUT HERE------------------------------------------------CUT HERE------
#### BINHEX directory-c.hqx ****
From: kenlong@netcom.com (Ken Long)
Subject: directory_src.sit
Date: Tue, 21 Dec 1993 08:54:22 -0800 (PST)
Dear MacGifters:
A netcom server error fouled up my first attempt to send this.
-----------------------------------------------------------------------
Directory is o PD (for noncommercial use) Think C 5.0.4 project which
puts up a window, shows progress data of scans of mounted volumes in a
window for each, then displays full path trees for all files on the volumes.
Teaches about getting full paths, scanning volumes, scrolling text,
writing data to a window, and much more.
-----------------------------------------------------------------------
#### BINHEX dirent-h.hqx ****
Date: Sun, 4 Jul 93 14:52:04 EDT
From: ugtalbot@mcs.drexel.edu (George T. "14K F/D" Talbot)
Subject: dirent.sit.hqx
This is source code for a Mac implementation of the UNIX "dirent.h" library.
#### BINHEX dragonsmith-11-c.hqx ****
Date: Tue, 27 Oct 92 17:44:22 EST
From: Paul.Hoffman@um.cc.umich.edu
Subject: Dragonsmith 1.1, part 01
Dragonsmith 1.1
Drag-and-drop application kit for THINK C 5.0.
Dragonsmith lets THINK C programmers easily create drag-and-drop
applications (or "dragons") for use with System 7. It features an
object-oriented class "Dragon" which may be subclassed to provide
any batch-type action desired. All source code is included.
Notable changes and additions in version 1.1 --
+ Versatile disk- and folder-opening capability
+ Background processing
+ Extensive documentation (MSWord and text formats)
+ Resource-based Preferences class
+ Improved file filtering
+ Easier interface for subclasses
+ Improved Apple event debugging
+ Template files for quick Dragon subclassing
+ Improved menu support
Three sample dragons with full source code are included.
Dragonsmith is freeware. Send comments to:
Paul Hoffman
840 S. First #1
Ann Arbor MI 48103
U.S.A.
Internet: paul.hoffman@um.cc.umich.edu
AFS: /afs/umich.edu/user/n/k/nkuitse
"Dragons do not enter into this story"
--------------------------- CUT HERE ---------------------------
#### BINHEX driver-22-c.hqx ****
From: Pete Resnick <resnick@cogsci.uiuc.edu>
Subject: Driver 2.2
Date: Sun, 24 Oct 93 16:20:52 CDT
Attached is version 2.2 of Pete Resnick's device driver code. This
code is especially useful for device drivers written using THINK C's
device driver facility, though it is useful for other development
environments as well since it describes in detail how to install
device drivers correctly into the Device Manager unit table.
Please feel free to use it and to distribute it in it's original form.
All that I ask is that you credit me if you use it in a released piece
of code.
pr
--
Pete Resnick (...so what is a mojo, and why would one be rising?)
Graduate assistant - Philosophy Department, Gregory Hall, UIUC
System manager - Cognitive Science Group, Beckman Institute, UIUC
Internet: resnick@cogsci.uiuc.edu
#### BINHEX dunjin-44.hqx ****
From "Magnus Olsson <magnus@thep.lu.se>" Tue Aug 24 18:03:37 1993
From: Magnus Olsson <magnus@thep.lu.se>
Date: Tue, 24 Aug 93 15:49:08 +0200
Subject: Dunjin_4.4.cpt.hqx part 1/6
Dunjin_4.4.cpt.hqx part 1 of 6
===== cut here =====
Submission for info-mac: Dunjin 4.4, a text adventure game.
(BinHexed Compact Pro archive)
Dunjin version 4.4 is a shareware text adventure game for Macs, in the
Infocom tradition. Although this is a traditional text game, I have
tried to make use of the Mac's user interface. It is possible to
cut-and-paste text from the text window, there is a "movement compass"
that lets you move about by clicking on directions, and some of the
most common commands can be performed just by clicking on buttons on a
"command palette". Of course, it's still a text adventure - no pretty
pictures, I'm afraid...
Enjoy!
Magnus Olsson -- magnus@thep.lu.se, mol@df.lth.se
BinHexed file follows below.
========================= cut here =============================
#### BINHEX eat-au-p.hqx ****
Date: Thu, 2 Dec 1993 16:07:50 +0800
From: Quinn <quinn@cs.uwa.edu.au>
Subject: Movie Import Component Source Code
--========================_17153170==_
Content-Type: text/plain; charset="us-ascii"
Greetings
EatAU is a QuickTime component that converts Suns audio (.au) files into
QuickTime movies. It comes with full source code and is a simple example
of how to write a component in Pascal.
Share and Enjoy.
--========================_17153170==_
Content-Type: application/mac-binhex40; name="EatAU.cpt"
#### BINHEX example-scripting-additions-c.hqx ****
Date: Mon, 4 Oct 1993 12:56:06 -0500
From: jonpugh@netcom.com (Jon Pugh)
Subject: [*] Scripting Addition Samples
--========================_14520392==_
Content-Type: text/plain; charset="us-ascii"
Here are eight sample AppleScript Scripting Additions with C source code
done by Donald Olson of Apple Computer and presented in his WWDC talk this
year. I was asked to make these available on the Internet and now I have.
;)
These demonstrate a number of useful techniques for presenting information
including the use of records and wildcard handlers in addition to the
minimal boring stuff.
For all who care, Donald said it was OK to post them since they are also on
Applelink.
Jon
--========================_14520392==_
Content-Type: application/mac-binhex40; name="OSAX_Samples.sit"
#### BINHEX file-dropper-11b3-c.hqx ****
From "macmod (Info-Mac Moderator)" Mon Aug 30 06:32:34 1993
From: macmod (Info-Mac Moderator)
Date: Mon, 30 Aug 93 6:32:31 PDT
(5.65c/IDA-1.5 for info-mac@sumex-aim.stanford.edu); Sun, 29 Aug 1993 22:35:45
-0700
Date: Sun, 29 Aug 1993 22:35:00 -0700 (PDT)
From: Troy Anderson <tla@crl.com>
Subject: File Dropper 1.1b3
To: info-mac@sumex-aim.stanford.edu
Message-Id: <Pine.3.05.9308292200.A23203-h100000@crl.crl.com>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Content-Transfer-Encoding: QUOTED-PRINTABLE
File Dropper 1.1b3
Written by Troy Anderson
Copyright (c) 1992-1993, Troy Anderson; All Rights Reserved
What Is This Thing?
File Dropper is a THINK C 6.0 library that implements an application that y=
ou
can drop files or folders onto to do batch operations on. It handles the
getting of the AppleEvents if running under System 7, the main event loop, =
and
the menus. You need only write the code that acts on the individual files.
New Features in 1.1=A73
o Fixed a bug so that when you drop a folder onto your File Dropper
application, all the files inside are processed in stead of just the
first one.
=20
New with version 1.1b2:
o Built "File Dropper =B9" in THINK C 6.0
o The cursor is NOT reset to an arrow after each call to SetStatusPercenta=
ge.
o If you return FALSE from the eStartup, eSFInitialize, or eAEInitialize
messages, File Dropper will send you an eQuitting message and quit the
application.
o If you return FALSE from the eValidate message, File Dropper will skip a=
ny
remaining files in the current batch.
o If you return FALSE from an eDispose message, File Dropper will send you=
an
eQuitting message and quit the application. Returning TRUE from an eDis=
pose
message will cause File Dropper to continue running. This behavior does=
NOT
depend upon which of eSFInitialize or eAEInitialize was sent to you.
o If you return TRUE from an eQuitting message, the File Dropper quits. O=
n the
other hand, if you return FALSE from an eQuitting message, File Dropper
will quit.
o If you want the source code to File Dropper, send me money (see the end =
of
this document).
o Added an eUserCancelled message for when the user clicks Cancel in the s=
tatus
box.
o Added an eIdle message.
o Added the ChangeStatusMessage function that lets you change the message =
in the
status dialog on the fly, during your processing of the file.
o Changed some things internally, so you can NOT call
InstallCustomGetFSSpecFunc, InstallCustomFileFilterFunc, or
InstallCustomDialogHookFunc from an eSFInitialize or eAEInitialize mess=
age
any more, just from eStartup.
o Fixed a bug in the ErrorAlert function so that text relating to the erro=
r as
well as the word "Error." show up in the dialog.
o Made it simpler to support AboutBox functionality. You just put text in=
STR#
resource 129, and it will be displayed in the warp stars. To enable thi=
s
feature, return TRUE from the eDoAboutBox message.
New with version 1.1b1:
o You specify if you want the status dialog displayed while you are
working on the file. Progress bar like Finder 7's that you update by
specifying how far you are along with a percentage (0 - 100). You
specify if you want this, too.
#### BINHEX final-chance-10-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Final Chance 1.0 (source code)
Date: Mon, 13 Dec 1993 05:11:34 -0500 (EST)
Final Chance is a combination of fluff and utility. On one hand, it gives
you a random quote on shutdown, which is pretty useless, really. On the
other hand, it gives you a final chance to decide if you really want to shut
your Macintosh down, or if you want to exit to the Finder.
This INIT is free and is distributed under the GNU General Public License.
This archive contains complete THINK C 6.0.1 source code and project files for
the INIT. If you do not have FTP access, e-mail the author for a copy of the
control panel, the source code, or a list of other programs by the same author.
The address is f8dy@netaxs.com.
This code demonstrates the basics of INIT installation, shut down procedures,
and loading dialog resources at INIT time to use later on.
Final Chance 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### BINHEX finder-progress-bar-10.hqx ****
From macmod Tue Aug 31 20:55:36 1993
Date: Tue, 31 Aug 93 19:56:14 PDT
From: cklarson@rosarita.engr.ucdavis.edu (Christopher Klaus Larson)
Subject: finder-progress-bar-10-c.cpt.hqx
FinderProgressBar 1.0 by Chris Larson
This is the THINK C source for a CDEF which mimics the progress bar
used by Finder.
#### BINHEX finger-server-c.hqx ****
Date: Wed, 20 Oct 1993 10:00:21 -0400 (EDT)
From: Aaron Wohl <aw0g+@andrew.cmu.edu>
Subject: finger server for system 7
Finger server for system 7
by Aaron Wohl N3LIW / Public Domain / mail n3liw+@cmu.edu
Home ftp site akutaktak.andrew.cmu.edu [128.2.35.1] /aw0g/finger*
Shows list of running processes and list of open files.
>From a unix server we finger a mac running a mail gateway
to see if it is still alive and what it is running.
Think C sources included
#### BINHEX flight-simulator-20-c.hqx ****
Date: Fri, 11 Dec 92 10:32:00 PST
From: chris@carnival.lbl.gov (Chris Moll)
Subject: flight-simulator_v2.hqx
This is the source code for a program to
demonstrate how to do 3D perspective drawing and
clipping. It's written as a sort of crude flight
simulator - you "fly" through a rather simple world.
It also shows how to do simple animation.
All math is fixed-point to make the speed tolerable
on feebler Macs. With an FPU the speed would be roughly
the same using floating point.
The package contains the source code, a ThinkC
vers.5.0.3 project, and an executable version compiled
for any Mac. The changes from the old version are minor,
mostly I fixed things that would prevent it from compiling.
Comments etc. to
Chris Moll
chris@carnival.lbl.gov
archive as /info-mac/source/c/flight-simulator_v2.hqx
(replace /info-mac/source/c/flight-simulator.hqx)
#### BINHEX floating-windows-pas.hqx ****
From: pottier@clipper.ens.fr (Francois Pottier)
Subject: no subject (file transmission)
Date: Sat, 19 Jun 93 12:53:34 MET DST
Hi archiver!
This is a small set of THINK Pascal 4 routines to handle floating windows
in a Pascal program.
A few days back I looked on several ftp sites for such code snippets. All I
found was a C library by Patrick Doane. I translated it to THINK Pascal
and I also made it much shorter and clearer (IMHO). Since there is no
Pascal source code out there, I thought I'd submit to the archives.
This code is public domain. Whoever finds it useful may use it.
Enjoy
Francois Pottier
pottier@clipper.ens.fr
To the archiver : this file should be named something like
'Pascal-FloatWin.hqx', I suppose. Thanks
#### BINHEX fmenus-example-pas.hqx ****
Date: Tue, 24 Nov 1992 13:45:06 +0800
From: Peter N Lewis <peter@ncrpda.curtin.edu.au>
Subject: source/pascal/FMenusExample.hqx
_______________________________________________________________________
Peter N Lewis <peter@ncrpda.curtin.edu.au> Ph: +61 9 368 2055
This is some example code to demonstrate the use of MyFMenus.unit.
This unit implements FMenus in a similar way to the Finder, which
allows decoupling of the menu position from the code that executes
the menu's command. The example program is not a full shell, it
simply implements the Menus, and each menu selection prints a
message to the console window. It should be fairly easy to understand.
I've used this code in several programs, and it works quite nicely,
avoiding the need to keep changing constants in the code every time
you add a menu item.
TopSoft is working on an advanced version of this (written in C
for some strange reason), if you are interested in that, or other
things that TopSoft is doing, check out the ftp site at
syrinx.kgs.ukans.edu in the /topsoft directory, or ask to join
the mailing TS mailing list at ts-request@syrinx.kgs.ukans.edu
(hopefully you'll join inbetween the flame wars and not in the
middle of one :-)
[Wouldn't it be nice if this came out comp.sources.mac?
Too much to ask I guess]
Hope its useful to someone,
Peter. <peter@ncrpdao.curtin.edu.au>
FMenus Example v1.0.0 Copyright 1992 Peter N Lewis
#### BINHEX game-master-isolation-pas.hqx ****
From: gurhs@uniwa.uwa.edu.au (Rhys Hollow)
Subject: source/pascal/Isolation-rulebook.hqx
Date: Wed, 13 May 92 21:49:08 WST
The Moderators,
Here is the source to the GameMaster rulebook Isolation. It assumes the
user has the GameMaster developer's kit.
It is in Think Pascal 4.0
Rhys.
--
Rhys Hollow (gurhs@uniwa.uwa.oz.au) "ee'er by gum he's a bad'un!" -DangerMouse.
#### BINHEX gamma-fading-lib-112-c.hqx ****
From: <fprefect@engin.umich.edu>
Date: Tue, 9 Nov 93 02:49:25 -0500
Subject: Gamma Fade THINK C Libs v1.1.2
This is an updated post of my Gamma Fade THINK C library,
bringing it to v1.1.2. The only change is a bug fix to bring
compatibility with EvenBetterBusError init.
For those not initiated, Gamma Fades will ramp your Mac II
monitor brightness to black and back smoothly (ala Maelstrom).
The test app will demo the effect.
The library is free...
Matt Slot fprefect@engin.umich.edu
[Note to Moderator: The previous posting (v1.1.1) from earlier
tonite should be removed from the queue. This fixes an important
bug - Thanks MJS]
#### BINHEX gamma-table-11-p.hqx ****
Date: Wed, 21 Jul 1993 10:16:09 -0800
From: mxmora@unix.sri.com (Matthew Xavier Mora)
Subject: Gamma Util Pascal Library
I converted Matt Slot's Gamma Library so that it can be used by Pascal
programmers like me.
Enclosed is Gamma util Pascal Library. This lets you do screen dimming
on monitors capable of doing dimming.
Matt
__________________________________________________________________
Matthew Xavier Mora The keeper of the UMPG
SRI International Matt_Mora@QM.sri.com
[Sent using Eudora 1.3] mxmora@unix.sri.com
__________________________________________________________________
#### BINHEX ghost-10-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Ghost 1.0 (source code)
Date: Thu, 16 Dec 1993 04:10:10 -0500 (EST)
Ghost is a classic word-building game for two or more players. Players take
turns each adding a letter to build a word, and whoever finishes the word
loses the round. Lose five rounds, and you become a "ghost" and are out of
the game! Up to five human players can compete against up to five computer
players at a variety of skill levels.
Ghost is free and is distributed under the GNU General Public License; this
archive contains complete THINK C source code for the game, as well as complete
source code for an external application used to set up the game's self-
integrity checker. If you do not have FTP access, e-mail the author requesting
a copy of the game, the source code, or a list of other programs by the same
author. The address is f8dy@netaxs.com. Bug reports, comments, and
suggestions may be sent to the same address.
This archive contains both THINK C 5 and THINK C 6 project files. Use
whichever one you wish and throw away the other.
The code demonstrates the basics of event handling, menus, hierarchical menus,
prefs file maintenance, dialogs, alerts, windows, off-screen bitmaps,
synchronous and asynchronous sounds, machine-independent timing loops, file
maintenance, Gestalt environment checking, apple events, and the not-quite-
yet-famous "cough to continue" modal dialog filter proc. None of this is very
well commented, but feel free to direct any questions to f8dy@netaxs.com.
Ghost 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### BINHEX ghost-mouse-11-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Ghost Mouse 1.1 (source code)
Date: Sat, 13 Nov 1993 23:35:30 -0500 (EST)
Ghost Mouse is a fun little INIT which will cause your mouse to disappear
if you stop moving it. Due to numerous requests from users of version 1.0,
the mouse can stay stationery for about 2 seconds before it disappears.
This INIT is free and is distributed under the GNU General Public License;
this archive contains complete THINK C 6.0.1 source code and project files
for the INIT. If you do not have FTP access, e-mail the author for a copy of
the INIT, the source code, or a list of other programs by the same author.
The address is f8dy@netaxs.com.
This code demonstrates the basics of writing and installing a VBL. This code
should work under any system, with any monitor, on all Macintoshes. Please
report any bugs/comments/suggestions to f8dy@netaxs.com.
Ghost Mouse 1.1 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### BINHEX ghostscript-252b2-c.hqx ****
Date: Wed, 3 Mar 93 15:07:37 PST
From: mwfong@nisc.sri.com (Martin Fong)
Subject: MacGS 2.5.2b2 Dev
03 March 1993
These files constitute MacGS 2.5.2 Beta Two and supercede MacGS 2.5.2
Beta One. The distribution is divided into three parts: a
self-contained runtime environment, complete with fonts, a
self-contained runtime environment *without fonts*, and, in accordance
with the GNU General License, a self-contained development
environment. Please replace the previous version of MacGS with this
one.
Thank you.
Martin Fong mwfong@nisc.sri.com
Senior Software Engineer (415) 859-4251
SRI International, EJ209
333 Ravenswood Avenue
Menlo Park, CA 94025
------------------------------------------------------------------------
01 March 1993
Overview
--------
MacGS_2.5.2b2_Runtime.cpt contains a self-contained runtime environment
for version 2.5.2 Beta 2 of Macintosh Ghostscript that runs on a
Macintosh with at least 2 Megabytes of memory.
MacGS_2.5.2b2_RT_No_Fonts.cpt is identical to MacGS_2.5.2b2_Runtime.cpt
except it does *not* contain the Ghostscript fonts. This file was
specifically created for those who are upgrading from a previous version
of MacGS 2.5.x and who wish to avoid the cost of transferring
Ghostscript's fonts. Please do *not* obtain this archive unless you are
upgrading from a previous version of MacGS 2.5.x.
MacGS_2.5.2b2_Dev.cpt contains the development environment for version
2.5.2 Beta 2 of Macintosh Ghostscript. Because it does *not* contain
all of the Ghostscript fonts, you must also obtain and unarchive
MacGS_2.5.2b2_Runtime.cpt to obtain a complete Ghostscript runtime
environment. However, this archive contains sufficient files to run
standalone.
This implemention does *not* require 32-bit Color QuickDraw and runs
under both System 6 and System 7. It should even run on black-and-
white displays.
This version does *not* presuppose a 68020 or better processor, nor does
it presuppose the existence of a 68881 FPU.
Getting Started
------- -------
Once Ghostscript is initialized, use the MacGS menu item Open File... to
select a file to preview. I suggest your opening one of the files in
gs:(Tests). Also note that most of the files in the (macGS Tests)
folder assume that the Laserprep file was previously loaded. Use the
MacGS menu item Resume to continue.
Because MacGS used hardcoded relative paths, I *strongly* suggest that
you neither rename nor move files contained within the MacGS folder. If
you do, you risk of having MacGS fail during initialization and
prematurely terminating.
Mac-Specific Features
------------ --------
Once Ghostscript is initialized, you can open and display PostScript
files via the MacGS menu. This menu also allows you to save your
PostScript output as a PICT file.
You can Cut and Copy the rendered image to the clipboard.
The arrow keys will scroll the graphics window. On an extended
keyboard, the Page Up/Down and Home/End keys will scroll the image
appropriately; the addition of the Option key specifies the horizontal
scrollbar.
Beta 2 Enhancements
---- - ------------
The MacGS menu is now immediately available without having to bring the
Graphics Window frontmost. The command-key equivalents of the MacGS
menu items are also honored. (This entailed selectively pre-empting
THINK C's console driver *without* changing any of Symantec's code.)
As there have been reports of menu problems with Beta 1, these changes
may ameliorate those problems.
You may now select alternative device drivers via MacGS' Configure...
menu item. In the near future (RSN :-), I'll look into providing a GUI
to allow you to specify device-specific attributes. Please note that
most of the other drivers (viz., GIF and PBMPlus) create scratch files,
some which need to be deleted and others which need to be renamed.
However, this behavior seems to be a consequence of how these drivers
were originally implemented.
You may interactively selection a region to save to a file or copy to
the clipboard. Although this feature has been successfully tested with
escher.ps, tiger.ps, and golfer.ps with a 2 Mbyte memory partition,
depending upon the complexity of your image, you may have increase
MacGS' memory size.
When MacGS is rendering via the Open File... menu item, the cursor is
changed to a spinning watch.
Under System 7, background processes are now given cycles.
showpage always requires the use of MacGS' Resume menu item.
If PICT recording runs out of memory, MacGS returns VMError.
To accommodate MacGS and intialization file interdependencies,
gs_mac.ps checks MacGS' version.
Beta 1 Enhancements and Bug Fixes
---- - ------------ --- --- -----
You may now interrupt the execution of a large PS file by invoking Stop
>From the MacGS menu when GS pauses at the end of a page after a
showpage.
The name of the Laserprep file has been moved from MacGS' resource file
to the gs_mac.ps initialization file.
Runtime errors sometimes caused MacGS to terminate abnormally with a
typecheck error if the Ghostscript interpretor was implicitly invoked
via the Open File... menu item (-- matmesh2.ps did this). This was
caused by PS programs which did not restore the operand and dictionary
stacks to their previous non-empty states. The .macrunfile procedure in
gs_mac.ps has been modified to accommodate this ... *antisocial*
behavior.
In Beta zero, the Open File... command did not work the very first time
it was used.
Limitations (Caveat emptor!)
----------- ------- --------
There is no way to gracefully interrupt MacGS while it is rendering.
Although I've implemented preliminary code (-- MacGS actually detects
Command-. key presses), this feature relies on GS using the return value
>From gp_check_interrupts (). Peter says that this is on his list of
things to fix for GS 2.6.
MacGS 2.5.2 is *absymally* slow when rendering snowflak.ps. This is
because Peter eliminated the use of driver-specific fill trapezoid
routines. (MacGS *2.2* is actually very much faster. Oh, well -- one
step forward, two steps back....) Peter's suggestion is to create an
image device and let Ghostscript do the rendering. However, the
tradeoff is that a resultant picture is comprised of a monolithic bitmap
and not composite, and editable, QD picture elements.
Printing appears to work for LaserWriters and DeskWriters. However,
because MacGS is printing a backing-store QD picture, the resolution is
limited to 72 dpi (the Macintosh screen density). In order to
accommodate laserprinter resolutions (e.g., 300 dpi or whatever), MacGS
would need to re-render the image at a higher resolution. This is better
done with a dedicated (TBD) MacGS printer driver.
Bugs
----
On a black-and-white (viz., 1-bit deep) display, some PS files make the
initial contents of the graphics window black; scrolling the window
sometimes ameliorates this problem.
There is a problem with GS 2.5.2 (which MacGS inherits) rendering
screen.ps. Peter is fixing this in GS 2.6.
There have been reports of INIT/cdev conflicts (Menubar Pattern, Window
Shade, and BeHierarchic). If you suspect that MacGS is failing because
of an INIT conflict, please drop me a note indicating the suspect
extension. If the extension is either freeware or shareware, please
indicate its availability and I'll attempt to obtain a copy for testing.
MacGS appears to suffer from memory lossage. Symptoms include partial
rendering to the screen, lack of backing-store, etc.. If this occurs,
quit and restart MacGS. If this problem persists, increase MacGS'
memory size. If it still persists, please drop me a note.
THINK C Configuration Issues
----- - ------------- ------
Because THINK C's development environment only approximates a unix
system, you need to create an empty file named "sys/types.h" and put it
in THINK C's system header file path (viz., where THINK C searches for
"<.h>" files). In addition, you'll need to create an alias (-- or a
copy, for those of you still using System 6) of stdlib.h named
"malloc.h" and also put it in THINK C's system header file path.
Resource Hacking
-------- -------
I've created a 'pref' resource (the associated TMPL resource is
included) that defines the size of the graphics output window. If you
want MacGS to use something other than your screen's maximum size,
select the "Use resource" flag and change the resource's width and
height fields. Also, if you're both adventurous and curious, this
resource contains additional fields whose values you may change for your
runtime enjoyment.
You may also change MacGS' default paths by modifying the first string
in the STR# 128 resource. Caveat emptor!
Potential Futures
--------- -------
An automatic printing driver.
Perhaps someone will be adventurous and create a PostScript-to-EPS
driver using MacGS as a starting point. :-)
Drag and drop preview/printing.
PAP level printing to PS printers. Issues include what to do about
missing fonts.
Distribution Caveats
------------ -------
Even though I've not necessarily included the caveat in all of MacGS'
source code, the distribution of the source code is controlled by the
GNU General License.
...Martin Fong mwfong@nisc.sri.com
------------------------------------------------------------------------
#### BINHEX gnuplot-35-c.hqx ****
From: laval@londres.cma.fr (Philippe LAVAL)
Subject: Gnuplot 3.5 for Macintosh
Date: Fri, 10 Dec 1993 13:45:41 +0100
Hello,
Find inclosed a version for macintosh of Gnuplot 3.5
It as bee compacted and binhexed by CompactPro 1.33.
The sources are for Think C 5.04 but compile as well
with Think C 6.0
Bye
#### BINHEX gravity-mouse-11-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Gravity Mouse 1.1 (source code)
Date: Sat, 13 Nov 1993 23:33:23 -0500 (EST)
Gravity Mouse will cause your mouse to be occasionally overcome by gravity.
This INIT is free and is distributed under the GNU General Public License;
this archive contains complete THINK C 6.0.1 source code and project files
for the INIT. If you do not have FTP access, e-mail the author for a copy
of the INIT, the source code, or a list of other programs by the same author.
The address is f8dy@netaxs.com.
This code demonstrates the basics of writing and installing a VBL. This code
should work under any system, with any monitor, on all Macintoshes. Please
report any bugs/comments/suggestions to f8dy@netaxs.com.
Gravity Mouse 1.1 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### BINHEX gtq-scripting-lib-10b4-as.hqx ****
Date: Tue, 23 Nov 1993 01:06:56 -0400
From: gtq1@cornell.edu (Greg Quinn)
Subject: AppleScript Scripting Extension Library
GTQ Scripting Library 1.0B4
This is my library of AppleScript Scripting Extensions (osax). Would you
please archive this to the appropriate places. This library is for
nonprofit, noncommercial distribution only. No one should change or modify
this library in any way without my permission.
Greg Quinn
D3297
gtq1@Cornell.edu
#### BINHEX headlines-101-c.hqx ****
From: k044477@hobbes.kzoo.edu (Jamie R. McCarthy)
Subject: Headlines 1.0.1 code
Date: Mon, 23 Nov 92 9:22:20 EST
This is the source code for the After Dark module "Headlines,"
version 1.0.1.
I don't know whether it's legal to redistribute two of the source files
I used. For that reason, I've not removed the object code for those
files, and have included only their header files. They are
ATMInterface.c and NeoTextBox.c. If anyone can advise me about the
legality of distributing these sources, I'd like to hear from them.
In any event, you'll probably need to keep the project file and not
"Remove Objects" if you want to successfully compile Headlines.
Note that this submission does not include the code to Greg Smith's
"spew," which was the basis for Headlines. This is only because Greg's
distribution terms precluded putting this on e.g. Pacific HiTech's
Info-Mac CD-ROM. My own terms, now, are a little looser.
I ftp'd the source to "spew" from wuarchive.wustl.edu, in
/usenet/comp.sources.games/volume01, where it probably still is.
--
Jamie McCarthy Internet: k044477@kzoo.edu AppleLink: j.mccarthy
#### BINHEX hier-menu-demo-c.hqx ****
From: kenlong@netcom.com (Ken Long)
Subject: hiermenudemo.sit.hqx
Date: Sat, 25 Dec 1993 09:32:30 -0800 (PST)
This is a heirarchial menu demo I downloaded off BMUG, then made
run on Think C 5.0.4.
It teaches how to make hierachial menus by "hot wiring" them, as
the ones in the Symantec Think C demo project "Bullseye." It uses
a resource only for the 'ICON' and 'ALRT' resources, but if someone
wants to use a 'cicn' they need only dump the 'ICON" and put in a
'cicn' of the same ID. The 'cicn's can be from 8 x 8 pixels to
64 x 64 pixels or anything in between. An 8 pixel high by 64 pixel
wide 'cicn' with a space for the menu name is a unique format.
The following is the original readme content.
---------------------------------------------------------------
Program name: Hier Menu Demo
Author: Ted C. Johnson, Sun, Aug 14 1988.
Compilation instructions:
use Lightspeed C, v.2.15.
This program DOES use a resource file.
I developed this program on a Mac SE HD20 running
System/Finder 4.1/5.5.
Summary:
This program demonstrates how to use hierarchical menus. It
also demonstrates how to handle DA's, how to make your own
"About…" box (with an icon), and how to use dialog boxes.
The use of this source code is free, provided it is for
non-profit purposes. I hope it can save someone some time!
However the name "T Bear Software" and the T Bear icon are
both CopyRight © 1988 by Ted C. Johnson, and may NOT be used
without my express written permission.
----------------------------------------------------------------
#### BINHEX image-144-pas.hqx ****
Date: Thu, 18 Jun 92 10:20:03 -0400
From: wayne@zippy.nimh.nih.gov(Wayne Rasband)
Subject: NIH Image 1.44 Source(Binhex)
This is the Think Pascal source code for Image 1.44, a public domain Mac
program for capturing, analyzing, editing, annotating, animating, and
printing images. It consists of 32,853 lines of source code in 20 modules.
--wayne rasband(wayne@helix.nih.gov)
#### BINHEX infinity-windoid-22-c.hqx ****
Date: Fri, 5 Mar 1993 11:52:58 -0600
From: r-harms@grayhawk.rent.com (Richard R. Harms)
Subject: Infinity Windoid v2.2
The attached file contains a wdef for windoids that supports most of the
features that the system's regular wdef provides. Troy Gaul (the author) is
releasing it public domain, in the hopes that more packages will use it
instead of some of the black and white windoid that are now out there (just
adding this to some existing programs improves the appearance of their
interface a lot). The source code is included, along with a Makefile for
MPW, and a Project file for Think C.
Features include: Supports System 7-style coloring of windows. In System
7, the tinge color set by the user in the Color control panel is used.
Close box can be enabled from NewWindow by setting goAwayFlag. Zoom box
(special case) is implemented. Title bar can appear along the left of the
window. For MacApp users, the left/top behavior of the proc ID can be
switched. System 6 coloring scheme is also supported (can be set in Kolor
or a similar control panel). In System 7, the windoid will be drawn
correctly even when it crosses monitors of differing depths. In System 7,
indexed color tables are checked to see if there are enough different
colors to display the color version (like the system WDEF).
-rh
--
Richard R. Harms Internet: r-harms@grayhawk.rent.com
1217 24th, Suite 49 AOnline: Grayhawk AppleLink: D2656
Des Moines, Iowa 50311 Fax: 515/884-2736 Unix: 515/277-6753
#### BINHEX irc-client-c.hqx ****
Date: Fri, 23 Jul 93 13:39:08 MET DST
From: Olaf Titz <s_titz@ira.uka.de>
This is a Macintosh IRC (Internet Relay Chat) client.
It allows you to talk to people all over the world over the Internet.
It will run on any Mac with System version 6.0 or greater and the
MacTCP driver, version 1.0 or greater.
This is free software according to the GNU General Public License
(any version). Refer to the file COPYING for precise terms and conditions.
This package contains complete source code and auxiliary files for
building the binary with THINK Pascal 2.0.1 or later versions.
Portions are Copyright 1992 Peter N.Lewis, read the notices in the
TCP Libraries files.
Send comments, suggestions, bug reports etc. to:
Olaf Titz <s_titz@ira.uka.de>
#### BINHEX ircle-151-p.hqx ****
Date: Thu, 25 Nov 93 17:39:09 MET
From: Olaf Titz <s_titz@ira.uka.de>
Subject: ircle 1.5.1 source
This is a Macintosh IRC (Internet Relay Chat) client.
It allows you to talk to people all over the world over the Internet.
It will run on any Mac with System version 6.0 or greater and the
MacTCP driver, version 1.0 or greater.
This is free software according to the GNU General Public License
(any version). Refer to the file COPYING for precise terms and conditions.
This package contains complete source code and auxiliary files for
building the binary with THINK Pascal 2.0.1 or later versions.
Portions are Copyright 1992 Peter N.Lewis, read the notices in the
TCP Libraries files.
Send comments, suggestions, bug reports etc. to:
Olaf Titz <s_titz@ira.uka.de>
#### BINHEX jotto-ii-10-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Jotto ][ 1.0 (source code)
Date: Sat, 11 Dec 1993 18:02:14 -0500 (EST)
Jotto ][ is a simple word game based on logic and frustration. The computer
will pick a 5- or 6-letter word from a 2000+ word database, and you have 15
tries to guess it. You will get feedback on how many letters in your guess
are in the actual word, but beware: each guess must be a valid word, or you
will or you will not get any feedback about it at all.
Jotto ][ is the sequel to Jotto and Jotto Deluxe, featuring better graphics,
more sounds, animation, the ability to play with either 5- or 6-letter words,
the ability to learn new words if desired, and better "about" boxes. It
supports color, grayscale, and B/W monitors and works under system 6 or 7.
(For technical reasons, sounds may require system 6.0.7 or later.) Please
e-mail comments and suggestions to the author at f8dy@netaxs.com.
This game is distributed under the GNU General Public License. This archive
contains complete THINK C 6.0.1 source code and related project files. It
also contains the source to another application used to set up Jotto's self-
integrity checker. The code in this archive demonstrates handling events,
menus, apple events, a prefs file, Gestalt environment checking, hierarchical
menus, dialogs, windows, standard file dialogs, and the soon-to-be-famous
"cough to continue" modal dialog filter proc. None of this is very well
commented, but feel free to direct any questions to f8dy@netaxs.com.
Jotto ][ 1.0 is copyright 1993 Mark Pilgrim, MerriMac Software Group.
#### BINHEX jpeg-convert-c.hqx ****
Date: Sat, 27 Feb 93 12:26:45 CST
From: wf-jim!brunner@terminator.rs.itd.umich.edu (Jim Brunner)
Subject: source/c/JPEG-Convert-src10.hqx
This is the source code distribution for version 1.0 of JPEG Convert. JPEG
Convert is a Macintosh application that acts as an interface for the
Independent JPEG Group's code. The Independent JPEG Group's code supports
JPEG conversion to different formats.
This distribution file contains source code only. The pre-compiled
application is available under a separate distribution. This distribution
does not contain the source for the Independent JPEG Group's software;
instructions for obtaining the IJG source are included in this
distribution.
Features:
* Supports system 6 or 7
* Converts JPEG file to/from GIF, PPM, & TARGA
* RLE support available (not in default distribution)
* Supports quantization, dithering, smoothing, grayscale
* Supports batch drag & drop conversion with system 7
* Balloon help and nifty dialogs
* SOURCE CODE IS AVAILABLE (separate distribution)
-----------------------------------------------------------------------
Jim Brunner (brunner%wf-jim.uucp%hobbes.uucp@twerp.ease.arco.com)
#### BINHEX key-cap-app-c.hqx ****
From: mxmora@unix.sri.com (Matthew Xavier Mora)
Subject: KeyCapApp 2.0 (source exaple)
Date: Fri, 10 Dec 1993 10:29:37 -0800
--========================_7108268==_
Content-Type: text/plain; charset="us-ascii"
Enclosed is my modified version of DTS's keyCap App. I add the 3D key effect
and modifier key support. Maybe some one else can add more features. The
source code is in c. A Think C project is included.
Xavier
(should go in the source code dir)
--========================_7108268==_
Content-Type: application/mac-binhex40; name="kcapApp_2.0.dd"
Content-Disposition: attachment; filename="kcapApp_2.0.dd"
#### BINHEX launch-creator-c.hqx ****
Date: Wed, 3 Nov 93 11:37:36 -0600
From: oleg@ponder.csci.unt.edu (Kiselyov Oleg)
Subject: launch-creator.cpt - (source) get a file "double-clicked" from a running pgm
What: get any file "double-clicked" from within a running program
Contents:
launcher.cc - code itself (commented)
vlauncher.cc - verification routine
Language: Symantec C++ 6.0 (though worked for Think C 5.0, too)
System: System 7.x, but probably 6.x is OK, too.
Note: needs standard environment, see myenv-notify.cpt
Comments to: oleg@ponder.csci.unt.edu, oleg@unt.edu
Explanation:
This is a simple program that, given a file name, launches an
application-creator and has it handle the file. If the file
is an application, it is launched itself. The net result is
exactly the same as if the user had double-clicked on the file.
Synopsis
void open_selection(const char * full_path_name)
Where the 'full_path_name' tells the full path name of the file that
should be "double-clicked". Though, a relative path name would do, too.
The present program achieves the magic by sending an 'Open Selection'
event to the Finder. It is significantly based on the FinderEvents
stack by Jon Pugh and Apple Computer, Inc. (C) 1991-92 Apple Computer, Inc.)
(which is written in Pascal and _very_ big and messy)
------------------------------------------------------------------------
#### BINHEX little-c.hqx ****
Date: Mon, 4 Oct 93 23:34:51 -0700
From: tsyang@dec-9.CE.Berkeley.EDU (Tzong-Shuoh Yang)
Subject: little_c.hqx - a C interpreter (Think C source)
This is the Think C 6.01 version of Little_C -- a subset C interpreter
by Herbert Schildt.
Little C is a C interpreter that can execute a subset of K&R ANSI C
programming language. ANSI C is a robust and powerful programming
language, but the Little C interpreter only implements a limited range
of features. These include: parameterized functions with local variables;
recursion; if statement; do-while, while, and for loops; integer and
character variables; global variables; integer, character, and string
constraints; return statement; several library functions; several
operators; functions returning integers; and comments. A recursive-descent
parser is used to implement the C interpreter. Details of the development,
coding, and functionality of the C interpreter are described in
Schildt, Herbert.
Building your own C interpreter.
Dr. Dobb's Journal of Software Tools v14, n8 (August, 1989):38
(16 pages).
The original source code can be obtained by anonymous ftp from sites with
ddjmag archive, e.g. oakland.oak.edu.
Enjoy.
T. S. Yang (tsyang@ce.berkeley.edu)
================================================================
#### BINHEX lp-daemon-332-c.hqx ****
Date: Thu, 1 Apr 1993 09:52:57 +0800 (WST)
From: "Casper A. Boon" <casper@mips.cs.murdoch.edu.au>
Subject: lpDaemon332.src.cpt.hqx
---2039267323-721586092-733629388:#10490
Content-Type: TEXT/PLAIN; charset=US-ASCII
Here are the THINK C 5.0.4 sources for version 3.3.2 of lpDaemon. This
corrects a serious bug in version 3.3.1.
#### BINHEX lp-daemon.hqx ****
Date: Wed, 20 Jan 1993 15:15:41 +0800 (WST)
From: "Casper A. Boon" <casper@mips.cs.murdoch.edu.au>
Subject: lpDaemon - a BSD compatible printer daemon for the mac
lpDaemon and LPR
----------------
lpDaemon is a utility that implements the Berkeley Line Printer Protocols on
the Macintosh. It normally spools postscript file sent from a unix host and
sends them to a LaserWriter on the Mac network.
LPR is an lpDaemon client that submits jobs to a printer queue. Typically a
text file is to a unix print queue.
lpDaemon and LPR run under system 7 and require MacTCP.
Casper Boon
April 1993
===========================================================================
Casper A. Boon, casper@mips.cs.murdoch.edu.au
Computer Science Programme,
School of Mathematical and Physical Sciences,
Murdoch University, South Street, PHONE: (09) 360 2790
Murdoch, Western Australia, 6150. OVERSEAS: +61 9 360 2790
===========================================================================
---2039267323-721586092-733629388:#10490
Content-Type: APPLICATION/octet-stream; name="lpDaemon332.src.cpt.hqx"
Content-ID: <Pine.3.05.9304010927.B10490@mips>
Content-Description:
#### BINHEX mac-gzip-01b2-c.hqx ****
Date: Sat, 13 Nov 93 21:13:48 +0100
From: Jose A. Gutierrez <MacSPD@ivo.cps.unizar.es>
Subject: MacGzip
Hello
Enclosed MacGzip 0.1b2 with sources. Is very similar to the previous version,
but this one is according with GNU's Public Lisence (I think it is).
have a good time.
________________________________________________________________________________
J.A. Gutierrez E.
________________________________________________________________________________
#### BINHEX mac-mud-32-c.hqx ****
Date: Fri, 26 Mar 1993 17:56:39 -0800
From: skelmir@uvapsy.psy.uva.nl (Mimir Reynisson)
Subject: MacMud 3.2 source code
Here is the source code for MacMud 3.2. A multi-user text based
adventure game interpreter. See /info-mac/games/MacMud3.2.sea.hqx
for details.
------------------------------------------------------------------------------
Mimir Reynisson Email: skelmir@uvapsy.psy.uva.nl
Faculty of Psychology sg_Reynisson@macmail.uvapsy.psy.uva.nl
University of Amsterdam rson@rhi.hi.is
Roetersstraat 15
1018 WB Amsterdam Tel: (+31)20-525-6762
The Netherlands Fax: (+31)20-525-6710
#### BINHEX mac-rtrace-10-c.hqx ****
Date: Tue, 10 Nov 92 11:36:30 EST
From: reid@sunpix.East.Sun.COM (Reid Judd - Sun NC Development Center)
Subject: [*] Submission: /info-mac/source/c/RTrace-1.0-src.cpt.hqx
This is the source distribution for Mac-RTrace-1.0. It requires
Think-C-5.0 to compile it and you can (optional) use the "Balloon Writer"
from APDA in order to add the Balloon help to it once you've built it.
About 50 scenes to use with RTrace are available in the
file RTrace-1.0-scenes.cpt.hqx and more are available at the
FTP site: asterix.inescn.pt [192.35.246.17] in the directory pub/RTrace.
RTrace was written by Antonio Costa at INESC-Norte in Portugal. The
MacIntosh version was written by Greg Ferrar at Ohio State and myself
(Reid Judd at Illuminati).
RTrace supports these capabilities:
point lights, directional lights, spot lights with fall-off, extended
lights, 2 ways of defining surfaces, spheres, axis-aligned
parallelipipeds, cylinders, cones, bicubic patches, polygons,
polygonal patches, high quality 3D text, CSG operations,
4x4 matrix transformations, textures, depth of field, diffuse
distribution, stereoscopic pair creation, ...
Procedural textures (with 4x4 matrix transformations) are also
supported: checkerboard, color blotches, marble, bump map,
fractal-brownian-motion, wood, glossy, image mapping, waves,
and many others.
Mac-RTrace uses parametric equations (using an algebraic equation
parser) to define animations and it outputs PICT image, PPM images,
and (of course) QuickTime movies.
Enjoy,
-- Reid Judd
ILLUMINATI@AppleLink.Apple.Com
2617 Sweetbriar Rd.
Durham, NC 27704
----- Begin RTrace-1.0-src.cpt.hqx -----
12-Nov-92 6:37:15-GMT,656601;000000000001
Return-Path: <macmod@SUMEX-AIM.Stanford.EDU>
Received: from SUMEX-AIM.Stanford.EDU by CAMIS.Stanford.EDU (4.1/inc-1.0)
id AA03183; Wed, 11 Nov 92 22:36:59 PST
Full-Name: Info-Mac Moderator
Received: by SUMEX-AIM.Stanford.EDU (4.1/inc-1.0)
id AA22118; Wed, 11 Nov 92 22:36:56 PST
From: macmod@SUMEX-AIM.Stanford.EDU (Info-Mac Moderator)
Resent-Message-Id: <9211120636.AA22118@SUMEX-AIM.Stanford.EDU>
Date: Wed, 11 Nov 1992 22:36:55 PST
Resent-To: backmod@camis.stanford.edu
Resent-Date: Wed, 11 Nov 1992 22:36:55 PST
Resent-From: Info-Mac Moderator <macmod@sumex-aim.Stanford.EDU>
Message-Id: <CMM.0.88.721550215.macmod@sumex-aim.Stanford.EDU>
Apparently-To: backmod@camis
#### TEXT mac-speech-p.txt ****
Date: Sun, 22 Aug 1993 17:21:29 -0500
From: PAUL M SHELDON <psheldon@utdallas.edu>
Subject: simple speech manager translation to pascal code
I have little experience in C and was grateful for the posting, in C,
of speech manager routine calls. It gave me an opportunity to make a
simple exercise to value learning C in the future by the book.
In the following, I paste my C to pascal code translation of a
submission of a quick hack on this archive by Alan Coopersmith as
/info-mac/dev/mac-speech-01.hqx. It was a lot of fun to figure this simple
translation with a kid I mentor and then go on late into the night to make
the compiling linking and execution work.
I tried to comment the code with some of my hard won understanding.
Perhaps this brief segment will improve others courage as it has mine.
I had a lot of psychological inertia to get moving into enthusiastic momentum.
I look forward to translating Alexander W. Kourakos' C demo with Paul
Traue, my mentor-kid. Povl H. Pedersen has given me some reassurance.
Notice what I am trying to say is this isn't much of a boast for me,
just a sense of remarkable joy that I can hook into new system extensions
from apple with pinterfaces. A few years ago the only guys I knew about
#### BINHEX mac-starter-c.hqx ****
Date: Tue, 13 Oct 1992 11:32 EDT
From: David Eck <ECK@BINAH.CC.BRANDEIS.EDU>
Subject: MacStarter_C (THINK C 5.0 application shell source code)
This is an application shell for writing quick, small programs
in THINK C 5.0. If you are already a Mac programmer, you
probably have written your own such shell. However, I am
posting this to info-mac because
-- it might be useful for a C programmer who wants to
get started writing programs with Mac interfaces without
facing the darker parts of Inside Macintosh or the THINK
Class library
-- it uses a window class to provide the basic functionality
of windows (This provides a concrete example of how objects can
be used in THINK C. It is also a neat way of localizing the
changes you need to make in the shell to produce a working
program.)
-- I have actually put in the time to write fairly detailed
comments explaining how to use the shell
-- I have included the code for two sample programs, also
liberally commented (I have separately posted a compiled version
of one of these programs, pentominos, to info-mac)
(What you are getting here is a self-extracting archive of
a folder that contains a THINK C 5.0 project file, several
C source files, and a README file.)
David Eck
eck@hws.bitnet
#### BINHEX mac-starter-p.hqx ****
From: David Eck <ECK@hws.bitnet>
Subject: dev/src/mac-starter-pascal.hqx
Date: Tue, 14 Dec 1993 17:32:13 -0600
--========================_13931840==_
Content-Type: text/plain; charset="us-ascii"
MacStarter_Pascal:
A Macintosh application shell for writing small-to-moderate
programs with THINK Pascal 4.0,
AND including "expression.p", which provides facilities for
parsing and evaluating mathematical expressions such as
"x~2+7" or "rate * sin(omega)".
MacStarter_Pascal uses the object-oriented features of THINK
Pascal to implement windows with the standard Macintosh behavior.
The windows can contain "decorations" such as buttons and
text-input boxes. A lot of comments are included in the source
files, and the source code for several simple applications is
included. The expression-manipulation unit, "expression.p" can
be used separately from the rest of the shell; one of the sample
applications shows how this unit can be used for graphing
functions.
Note that MacStarter_Pascal is similar to, but more sophisticated
than, MacStarter_C (for use with THINK C), which I have distributed
previously.
This application shell is appropriate for programs that don't
need all the power and complexity of the THINK Class Library.
It is provided free-of-charge and royality-free, and it can
be freely distributed provided no charge is made for it.
(I also hereby give my permission for it to be distributed
on the info-mac CD ROM.)
This is a binhexed self-extracting archive.
David Eck
Department of Mathematics and Computer Science
Hobart and William Smith Colleges
Geneva, NY 14456
eck@hws.bitnet
--========================_13931840==_
Content-Type: application/mac-binhex40; name="MacStarter_Pascal.sea"
Content-Disposition: attachment; filename="MacStarter_Pascal.sea"
#### BINHEX macbinary-ii-plus-pas.hqx ****
Date: Tue, 9 Feb 1993 15:36:53 +0800
From: Peter N Lewis <peter@cujo.curtin.edu.au>
Subject: source/pascal/macbinary2+100.hqx
This is the THINK Pascal 4.0.2 source code for MacBinary II+, a
System 7 drag&drop converter for MacBinary files. The source
code may be used for any non-commercial (ie, shareware or
freeware) purpose as long as I get a mention in the about box
and documentation of any derivative program. The code is very
sparsely commented. All pascal units ending with .unit are
taken from my personal library of reusable modules, and should
be fairly easy to incorporate into any other program. The
source code uses Michael Hecht's Task Manager code, and could
be used as an example of how to use that code, as well as
supporting the core Apple Events.
Hope its useful to someone,
Peter. <peter@cujo.curtin.edu.au>
MacBinary II+ v1.0.0 Copyright 1992-93 Peter N Lewis
#### BINHEX macintosh-tracker-11-c.hqx ****
Date: Sat, 2 Oct 93 16:10:41 -0500
From: tomlaw@yar.cs.wisc.edu (Thomas R. Lawrence)
Subject: Macintosh Tracker 1.1 Source Code
Macintosh Tracker 1.1 Source Code
PLEASE send all correspondence to tomlaw@world.std.com!!!
#### BINHEX mailcheck-c.hqx ****
Date: Wed, 20 Oct 1993 10:05:06 -0400 (EDT)
From: Aaron Wohl <aw0g+@andrew.cmu.edu>
Subject: check unix mail client
mailcheck / by Aaron Wohl N3LIW / Public Domain / mail n3liw+@cmu.edu
Home ftp site akutaktak.andrew.cmu.edu [128.2.35.1] /aw0g/mailcheck*
Available from compuserve in the ham radio sig/packet section
Mailcheck is an Init/cdev/driver to check for mail in a server
(unix) mailbox via UDP (TCP/IP) and pop a notification manager
dialog window or play a sound when mail comes in.
Sources included. It talks to a unix server which is also
available from the above site.
Aaron Wohl (aw0g+@andrew.cmu.edu)
#### TEXT mbprintf-c.txt ****
Date: Wed, 2 Dec 92 16:28:25 PST
From: macmod@SUMEX-AIM.Stanford.EDU (Info-Mac Moderator)
orrow.stanford.edu!stanford.edu!agate!ucbvax!hplabs!sdd.hp.com!elroy.j pl.nasa.gov!usc!davidp
From: davidp@calvin.usc.edu (David Peterson)
Newsgroups: comp.sys.mac.programmer
Subject: Just for you, an early Christmas present
Message-Id: <1fj5ksINNo34@calvin.usc.edu>
Date: 2 Dec 92 20:17:32 GMT
Reply-To: davidp@usc.edu
Organization: University of Southern California, Los Angeles, CA
Lines: 99
Nntp-Posting-Host: calvin.usc.edu
Apparently-To: info-mac
Resent-To: backmod
Resent-Date: Wed, 2 Dec 1992 16:28:22 PST
Resent-From: Info-Mac Moderator <macmod@sumex-aim.Stanford.EDU>
#### BINHEX menu-fixer-10-c.hqx ****
From: f8dy@netaxs.netaxs.com (Mark Pilgrim)
Subject: Menu Fixer 1.0 (source code)
Date: Mon, 15 Nov 1993 11:03:20 -0500 (EST)
Menu Fixer is a programmer's tool which will examine all the MENU resources
in a file and report (and optionally fix) discrepancies between the MENU
resource ID and the menu's internal menu ID. If your menus are showing up
scrambled or not showing up at all, try this first!
Menul Fixer is distributed under the GNU General Public License; this
archive contains complete THINK C 6.0.1 source code for the Menu Fixer
application, complete source code for an external application used to set
up the application's self-integrity checker, and notes for using the self-
integrity checker. You may freely redistribute this package as a whole;
you may freely modify this application and re-distribute it under the GNU
General Public License. See the file "GNU General Public License" in this
archive for details.
This code handles, among other things, events, menus, apple events, Gestalt
environment checking, hierarchical menus, dialogs, windows, off-screen
bitmaps, resource file management, and standard file dialogs. None of
this is very well commented, but feel free to direct any questions to
f8dy@netaxs.com.
Menu Fixer 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### BINHEX morpion-100-p.hqx ****
From: Peter N Lewis <peter@ncrpda.curtin.edu.au>
Subject: src/pascal - Morpion 1.0.0
Date: Fri, 3 Dec 1993 17:30:00 +0800
This is the Pascal source code for Morpion v1.0.0, a simple
solitaire game, initially designed by Henri Lamiraux.
The source code contains lots of interesting stuff:
Demonstrates the usefulness of building library routines (only
three of the included source files are particular to Morpion).
Support for the core AppleEvents
Support for FMenus which make you menu locations independent
of the code that implements them.
Supports for the TextToSpeech Manager.
Demonstrates OO techniques for implementing windows as objects.
Code for reading your own Version resource.
And lots of useful general purpose routines.
You can use this source code for any non-commercial purpose.
Hope it is useful to someone,
Peter. <peter.lewis@info.curtin.edu.au>
Morpion v1.0.0 Copyright 1993 Peter N Lewis
#### BINHEX mouse-broken-101-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Mousebroken 1.0.1 (source code)
Date: Tue, 7 Dec 1993 00:16:40 -0500 (EST)
Mousebroken is a control panel which will give you greater control over your
mouse (or less control, depending on how you look at it). It comes with 13
mouse modules, each designed to alter your mouse's behavior in a different
way. New mouse modules can easily be designed and added to Mousebroken. The
mouse modules in this archive are public domain; feel free to design your own!
The Mousebroken control panel is free and is distributed under the GNU
General Public License. This archive contains complete THINK C 6.0.1 source
code and project files for the control panel. This archive also contains
source code to 13 sample mouse modules and a blank module prototype (quite
well commented, too); these modules are public domain. If you do not have FTP
access, e-mail the author for a copy of the control panel, the source code, or
a list of other programs by the same author. The address is f8dy@netaxs.com.
Version 1.0.1 fixes a bug that caused the error dialog box to be displayed
incorrectly on black & white Macs. This version of the control panel should
work on any Macintosh, under either system 6 or 7. Some individual mouse
modules may have problems on systems with multiple monitors. Please report
any bugs/comments/suggestions to f8dy@netaxs.com.
This code demonstrates the in's and out's of writing a control panel,
advanced file maintenance, INIT installation, preference file maintenance,
notification through the Notification Manager, VBL installation and removal,
and the correct way to access Quickdraw globals in a control panel.
Mousebroken 1.0.1 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### TEXT mpw-tool-appleevents-c.txt ****
From: keith@taligent.com (Keith Rollin)
Subject: Re: Need sample code of MPW tool using Apple Events
Date: Fri, 18 Sep 1992 01:50:18 GMT
In article <1992Sep17.181819.23018@oakhill.sps.mot.com>,
tomc@oakhill.sps.mot.com (Tom Cunningham) wrote:
>
>
> Does anyone have some code for an MPW tool using Apple Events that
> they could send me? In particular, I want to communicate with the
> Tool Server (e.g. run a script) via Apple Events from within an MPW
> tool. Thanks.
I used the following in a tool I wrote to kill and restart the Finder. This
was in the hopes that shutting down the Finder would help speed up my long
compiles (it didn't). Remember that you have to have one of the MPW Shells
that comes with its High-Level Event Aware bit set:
void KillFinder()
{
#### BINHEX msg-12-demo-c.hqx ****
From: f8dy@netaxs.netaxs.com (Mark Pilgrim)
Subject: MSG Demo 1.2 (source code)
Date: Thu, 11 Nov 1993 12:30:16 -0500 (EST)
MSG Demo is a collection of graphic effects for putting a picture
onto the screen (into a window). The collection started in Feb.
1992 and has since grown to include 32 different effects, including
8 scrolling effects. This is the complete THINK C 6.0.1 project and
source code, distributed under the GNU General Public License. You
may freely modify this source code and re-release it under the GNU
licensing terms; read the enclosed file "GNU General Public License"
for details.
The graphic effects themselves have been updated, based on comments
received from earlier versions. They now do not rely on application
globals or external #defines. The rest of the code in this archive
demonstrates basics of apple events, menus, windows, offscreen bitmaps,
dialogs, asynchronous and synchronous sounds, hierarchical menus,
using a preferences file, using timing loops to run the same speed on
all Macintoshes, and general event handling.
MSG Demo 1.2 (demo application) has been uploaded to the archives. If
you can not find it or do not have ftp access, e-mail the primary
author at f8dy@netaxs.com (Mark Pilgrim). You may also e-mail bugs,
comments, and/or suggestions to that same address.
Some of the source files contained in this archive are copyright
(C) 1992-3 Dave Blumenthal. The rest are copyright (C) 1992-3 Mark
Pilgrim.
#### BINHEX msg-demo-10.hqx ****
From f8dy@netaxs.com Thu Aug 26 12:14:56 1993
From: f8dy@netaxs.com
Subject: MSG Demo 1.0 (graphics demo)
Date: Thu, 26 Aug 1993 08:17:36 -0400 (EDT)
MSG Demo is a collection of graphic effects for putting a picture
onto the screen (into a window). The collection started in Feb.
1992 and has since grown to include 32 different effects, including
8 scrolling effects. Source for each effect is available and will
be uploaded to sumex-aim in a separate file. (This file is only
the demo application which contains all 32 effects and 2 pictures.)
MSG Demo 1.0 is free; there is no shareware fee. It should run
on any Mac, system 6 or 7. Please report bugs/comments/suggestions
to the primary author at f8dy@netaxs.com (Mark Pilgrim).
MSG Demo 1.0 is copyright (C) 1992-3 Mark Pilgrim & Dave Blumenthal,
MerriMac Software Group.
Share and enjoy.
#### BINHEX msg-demo-source.hqx ****
From f8dy@netaxs.com Thu Sep 9 23:53:12 1993
From: f8dy@netaxs.com
Subject: MSG Demo source (2nd try)
Date: Wed, 8 Sep 1993 12:30:12 -0400 (EDT)
MSG Demo is a collection of graphic effects for putting a picture
onto the screen (into a window). The collection started in Feb.
1992 and has since grown to include 32 different effects, including
8 scrolling effects. This file contains commented C source code for
each effect, as well as usage notes and other necessary files. It
does _not_ contain source for the entire demo application, only the
graphic effects themselves. The rest is up to you. (:
This is a re-upload, because it has been brought to my attention that
the first time I uploaded this, I failed to include three of the
necessary files that each effect uses. Sorry about that. [To the
archivists: this archive completely supercedes the previous source
upload, which is /dev/src/msg-graphic-effects-c.hqx or something
similar in the sumex-aim archives.]
MSG Demo 1.0 (demo application) has been uploaded to sumex-aim. If
you can not find it or do not have ftp access, e-mail the primary
author at f8dy@netaxs.com (Mark Pilgrim). You may also e-mail bugs,
comments, and/or suggestions to that same address.
Some of the source files contained in this archive are copyright
(C) 1992-3 Dave Blumenthal. The rest are copyright (C) 1992-3 Mark
Pilgrim. You may freely use these source files in your own non-
commerical applications. See the individual copyright notices in each
source file for details.
Share and enjoy.
#### BINHEX msg-graphic-effects-10-c.hqx ****
From f8dy@netaxs.com Tue Aug 24 18:03:34 1993
From: f8dy@netaxs.com
Subject: MSG Demo 1.0 source code
Date: Mon, 23 Aug 1993 21:00:48 -0400 (EDT)
MSG Demo is a collection of graphic effects for putting a picture
onto the screen (into a window). The collection started in Feb.
1992 and has since grown to include 32 different effects, including
8 scrolling effects. This file contains commented C source code for
each effect, as well as usage notes and other necessary files. It
does _not_ contain source for the entire demo application, only the
graphic effects themselves. The rest is up to you. (:
MSG Demo 1.0 (demo application) has been uploaded to sumex-aim. If
you can not find it or do not have ftp access, e-mail the primary
author at f8dy@netaxs.com (Mark Pilgrim). You may also e-mail bugs,
comments, and/or suggestions to that same address.
Some of the source files contained in this archive are copyright
(C) 1992-3 Dave Blumenthal. The rest are copyright (C) 1992-3 Mark
Pilgrim. Feel free to use these source files in your own non-
commerical applications, but read the individual copyright notices in
each source file for details.
Share and enjoy.
#### BINHEX multisession-104-c.hqx ****
Date: Sat, 2 Oct 93 20:56:59 -0500
From: tomlaw@yar.cs.wisc.edu (Thomas R. Lawrence)
Subject: MultiSession 1.04 source code
Wow. Source code to MultiSession.
PLEASE send all mail to tomlaw@world.std.com!
#### BINHEX myenv-notify-c.hqx ****
Date: Wed, 3 Nov 93 11:35:47 -0600
From: oleg@ponder.csci.unt.edu (Kiselyov Oleg)
Subject: myenv-notify.cpt: "Standard" progr env for C/C++ (source)
What: minimal minimal "standard" programming environment for Think C/C++
Highlights: posting synchronous _and_ asynchronous notifications,
displaying messages: like crossbreed printf & DebugStr, but
works without MacsBug loaded!, simple error-handling
Note: _commented_ source code
Note: The environment is used in the programs I post next.
System: System 7, Think C/C++ version 6.0 (but worked for 5.0, too)
Contents:
myenv.h Declaration of functions, macros, and constants
myenv.cc Implementation source code
vmyenv.cc Validation routine that checks that everything works
notify.cc Source for posting notifications
Comments to: oleg@ponder.csci.unt.edu, oleg@unt.edu
Explanation:
notify.c: The set of functions lets a (possibly, background) application post
synchronous or asynchronous notification messages to the user.
Synchronous posting means that the posting function does not return until
the notification message is displayed and the user dismisses it.
In asynchronous mode, the posting function returns as soon as the
message is queued into the notification queue (but not yet displayed!).
The functions use the Notification Manager and the EventManager (via
function sleep() defined elsewhere in the standard env to relinquish
the CPU control while sleeping). Circular queue is used to store
asynchronous notification requests.
------------------------------------------------------------------------
#### BINHEX nih-image-149-c.hqx ****
From: salzman@Athena.MIT.EDU
Date: Wed, 31 Mar 93 21:57:15 -0500
Subject: NIH-Image.149_source.hqx (8600 lines = 558907 bytes)
#### BINHEX nuntius-11-c.hqx ****
Date: Mon, 6 Jul 92 15:41:20 +0200
From: speck@ruc.dk (Peter Speck)
Subject: Nuntius1.1.src.sea.hqx
*** SOURCE to: ***
Final version of Nuntius 1.1:
Newsreader, requires system 7, and ~1200K.
Written with MacApp3, C++ and the thread pkg from "d e v e l o p".
No documentation is available.
Report bugs etc to speck@dat.ruc.dk, not speck@frederik.ruc.dk
Some people have trouble with editing articles when they use
another editor besides TeachText. I'm working on this bug.
Peter Speck, speck@dat.ruc.dk
#### TEXT open-selection-pas.txt ****
From: mxmora@unix.sri.com (Matthew Xavier Mora)
Subject: OpenSelection Code (pascal source)
Date: 11 Sep 92 17:11:08 GMT
Here's the code to have the finder open a control panel.
Just pass the control panel's fsspec to the openselection
function and it should open it. Actually I think it will
open any valid fsspec but I wouldn't bet on it. I haven't
stressed this code so there are probably some bugs in it.
Matt
--------------------------------------------
{ OpenSelection.p ported by Matthew Xavier Mora}
{ ported from C.K. Han's openselection.c code }
{ 09-11-92 }
unit openSelection;
interface
#### TEXT path-from-fsspec-pas.txt ****
From: mxmora@unix.sri.com (Matthew Xavier Mora)
Subject: PathName from FSSpec (pascal code)
Date: 9 Sep 92 00:21:34 GMT
I spent the long weekend cursing at the AppleEventManager
trying to get the finder to open a control panel. Anyway,
one of the things I discoverd was that the alias manager will
give you a path name if you ask for it. Since my program needed to
display the path name, I wrote a function that will return a full
path name in a handle (not in a str255 so you it won't crash with long
path names) when you give it a fsspec.
I also figured out how to get the finder to open a control panel.
You need to send an open selection event. I finally found an example that
worked and ported it to pascal. If you would like to see that code I can
post it here also. Its a direct copy of C.K Han's C code that is on the
developers CD.
Here is the code:
#### BINHEX peek-a-boo-112-ad-c.hqx ****
From: joe@clipper.cb.att.com
Date: Thu, 28 Oct 93 21:46:32 EDT
Subject: PeekaBoo AD module 1.1.2
Macfolks,
PeekABoo version 1.1.2 AfterDark(tm) screensaver module.
This version will run under Multimodule and Randomizer !!
For those already with version 1.1.1, I'm submitting a patch
to update that version. Download the patch instead - it's
smaller :)
Source code is included. This is FREE. Requires Color Quickdraw
(+ System 7 ??) because it uses offscreen graphics worlds.
- joe
#### BINHEX pentominoes-141-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Pentominoes 1.4.1 (source code)
Date: Thu, 9 Dec 1993 23:16:02 -0500 (EST)
Pentominoes is a board game where you must fit 12 pieces (of five squares
each) into a variety of boards. Pieces may be rotated or flipped, but may
not overlap each other. A great geometric puzzler that goes back 40 years!
Pentominoes is distributed under the GNU General Public License; this archive
contains complete THINK C 6.0.1 source code for the Pentominoes application,
as well as complete source code for an external application used to set up
Pentominoes' self-integrity checker. You may freely redistribute this package
as a whole; you may freely modify this application and re-distribute it under
the GNU General Public License. See the file "GNU General Public License" in
this archive for details.
This code handles, among other things, events, menus, apple events, a prefs
file, Gestalt environment checking, asynchronous sounds, hierarchical menus,
dialogs, windows, off-screen bitmaps, file management, standard file dialogs,
the correct use of ReleaseResource instead of DisposeHandle (27 instances),
and the soon-to-be-famous "cough to continue" modal dialog filter proc. None
of this is very well commented, but feel free to direct any questions to
f8dy@netaxs.com.
Pentominoes 1.4.1 is copyright 1993 by Mark Pilgrim, MerriMac Software Group.
#### TEXT preferences-c.txt ****
From: Sproul@sproul.sproul.com (Mark Sproul)
Subject: Prefs file source code (C - long)
Date: 2 Oct 92 09:05:30 GMT
Several people asked for this source code. As explained in the comments,
it came from Inside Mac Comm Toolbox and there is a lot of code dealing
just with the Comm Tool box setup. It now handles the PREFERENCES
folder in the system folder properly.
I have done some additions to the code to make it more general and
usable as far as dealing with preferences. Such as GET pref and SET
pref. This code was all written and runs correctly with Think C 5.0.
Its been several months since I wrote this and was looking at it.
I may have forgotten to mention something, if you have any problems
let me know and I will post updates.
You need to define some things such as this:
#### BINHEX pro-tracker-asm.hqx ****
From "jamal@gnu.ai.mit.edu (Jamal Hannah)" Wed Sep 8 03:00:20 1993
Date: Tue, 7 Sep 93 19:22:59 -0400
To: info-mac@SUMEX-AIM.Stanford.EDU
From: jamal@gnu.ai.mit.edu (Jamal Hannah)
Subject: ProTracker-source.sit.hqx
Resent-To: backmod
Resent-Date: Wed, 8 Sep 1993 1:45:56 PDT
Resent-From: Info-Mac Moderator <macmod@camis.Stanford.EDU>
--========================_6712356==_
Content-Type: text/plain; charset="us-ascii"
Please place this file on the info-mac FTP site, either in a source code
directory, or in info-mac/snd/util (or a directory for sound and music
format documentation).
-------
This is the 68000 assembler source code for the Amiga music sequencing/sound
track editor called "ProTracker", the source and images for versions 1.2 and
2.0 are included. Hopefully it will help Macintosh programmers achive a better
understanding of the "MOD" Music file format that ProTracker uses, as well as
give ideas about writing sound track software.
The origional (LHARC) archive was found on FTP site wuarchive.wustl.edu in the
"aminet" section. (/systems/amiga/aminet/mus/edit/ptsource.lzh)
- Jamal Hannah <jamal@gnu.ai.mit.edu>, 9/7/93
--========================_6712356==_
Content-Type: application/mac-binhex40; name="ProTracker-source.sit"
#### BINHEX rebuild-projects-11-as.hqx ****
From: malldrit@sfu.ca
Subject: Rebuild Projects - THINK C Development Script
Date: Thu, 23 Dec 1993 13:56:14 -0800
Rebuild Projects v1.1
by Mark Alldritt
author of Script Tools & Monitor
Rebuild Projects is a AppleScript script which is usefull if you use
THINK C 6.0.1+ to develop software involving a number of seperate THINK C
project files. Rebuild Projects uses a parameter file to govern the order
and type of operations performed during the build process.
The parameter file can direct Rebuild Projects to compile certain projects,
move files, and empty folders. Additionally, the script is simple enough
(less than 150 lines) that you can add your own verbs to the parameter file
syntax to extend the script into areas you might find usefull.
Rebuild Projects requires AppleScript 1.0 or later, and Script Tools 1.3
or later. Script Tools is available from the Info-Mac archives and other
sites.
Package Contents:
Rebuild Projects
Read Me First (this text)
Example Param File
Rebuild Project is freeware. There are no restritions on use or
distribution.
#### BINHEX sample-ldefs.hqx ****
From: <fprefect@engin.umich.edu>
Date: Tue, 16 Nov 93 00:26:55 -0500
Subject: Sample LDEFs and Source
Sample LDEFs with source (for programmers) -
* SICN LDEF - Steve Falkenberg, MacDTS
* Sys7 Icon LDEF, Sys6/7 Icon LDEF, Indenting LDEF - Me
These LDEF's were written as experiments into new formats for
displaying data. I think the Icon LDEF's are useful for use in a
MS Word-like prefs box, and the others have neat uses too.
The commenting is minimal, but so is the functionality in an LDEF.
I think that examination should reveal what you need to know. Use
the LDEF source to write your own, or just use the compiled resources
for your app.
The only thing I could ask is that you post, or at least send me,
any LDEFs you make based on this. I dont need recognition or cash...
cuz I didnt write em for that.
Share and Enjoy...
Matt Slot, fprefect@umich.edu
#### BINHEX seer.hqx ****
Date: Wed, 20 Oct 1993 14:15:21 -0400 (EDT)
From: Aaron Wohl <aw0g+@andrew.cmu.edu>
Subject: seer / localtalk / records all packets
Seer records all packets on localtalk. It is not
32 bit clean. Source and object code is supplied.
The code is really bad but it works.
by Aaron Wohl, aw0g+@andrew.cmu.edu
For a much better example of how to write an
INIT/CDEV/DRVR see softkiss by the same author.
#### BINHEX sf-get-folder-p-pas.hqx ****
Date: Mon, 11 Jan 1993 13:51:59 +0800
From: Peter N Lewis <peter@cujo.curtin.edu.au>
Subject: /source/pascal/SFGetFolderP.hqx
SFGetFolderP, Pascal version
This is a pascal version of Ken Kirksey's <kkirksey1@aol.com>,
SFGetFolder, which allows the user to select a folder following
Apple's HI guidelines.
I'm not the author, I just converted it to Pascal. The
documentation is unchanged from Ken's, but I'm sure you can figure
it out.
Have Fun,
Peter. <peter@cujo.curtin.edu.au>
#### BINHEX shutdown-fade-10-c.hqx ****
From: f8dy@netaxs.netaxs.com (Mark Pilgrim)
Subject: Shutdown Fade 1.0 (source code)
Date: Fri, 19 Nov 1993 14:48:22 -0500 (EST)
Shutdown Fade will cause your Macintosh to fade all attached screens to black
every time it shuts down. This INIT is free and is distributed under the GNU
General Public License; this archive contains complete THINK C 6.0.1 source
code and project files for the INIT. If you do not have FTP access, e-mail
the author for a copy of the INIT, the source code, or a list of other
programs by the same author. The address is f8dy@netaxs.com.
This code demonstrates the basics of INIT initialization and loading,
shutdown procedures, and advanced gamma work. This code will only work on
monitors with gamma -- the Mac II line, and any color Mac with a non-built-in
monitor. (It has not been tested on a Color Classic; if anyone has one and
feels like testing, please let me know if it works.) Please report any
bugs/comments/suggestions to f8dy@netaxs.com.
Shutdown Fade 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### BINHEX shutdown-fx-11-c.hqx ****
From: f8dy@netaxs.netaxs.com (Mark Pilgrim)
Subject: Shutdown FX 1.1 (source code)
Date: Sun, 24 Oct 1993 22:17:25 -0400 (EDT)
Shutdown FX is a simple INIT which will, at shutdown, clear the Mac
screen with an interesting graphic effect. It picks randomly from 8
of the effects that are included in MSG Demo. (Note that the MSG Demo
is NOT required to use Shutdown FX. This INIT will work on its own; it
just reuses some of the same code as MSG Demo.)
Shutdown FX should work on any Macintosh under any system. The only
known flaw is that on systems with multiple monitors, only the main
monitor (the one with the menu bar) is cleared; all other monitors
are left untouched. If you find any other bugs, or if you have any
comments, please e-mail the author at f8dy@netaxs.com (Mark Pilgrim).
Version 1.1 fixes a bug when shutting down with applications still
running. (Sometimes only part of the screen was wiped to black.)
THIS ARCHIVE CONTAINS COMPLETE THINK C 6.0 SOURCE CODE. The INIT
itself is available from sumex-aim.stanford.edu, or e-mail the author
requesting a copy. This source code is free for non-commercial use,
but please read the notice in each file for details.
Shutdown FX is copyright 1993 by Mark Pilgrim, MerriMac Software Group.
#### BINHEX shutdown-fx-12-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Shutdown FX 1.2 (source code)
Date: Sat, 13 Nov 1993 23:31:50 -0500 (EST)
Shutdown FX will cause your Macintosh to clear the screen with a cool
graphic effect every time it shuts down. This INIT is free and is distributed
under the GNU General Public License; this archive contains complete THINK C
6.0.1 source code and project files for the INIT. If you do not have FTP
access, e-mail the author for a copy of the INIT, the source code, or a list
of other programs by the same author. The address is f8dy@netaxs.com.
This code demonstrates the basics of INIT initialization and loading,
shutdown procedures, and basic graphics work. This code should work under
any system, with any monitor, on all Macintoshes. Please report any
bugs/comments/suggestions to f8dy@netaxs.com.
Shutdown FX 1.2 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### BINHEX shutdown-fx-13-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Shutdown FX 1.3 (source code)
Date: Tue, 14 Dec 1993 03:34:30 -0500 (EST)
Shutdown FX will cause your Macintosh to clear the screen with a cool
graphic effect every time it shuts down. This INIT is free and is distributed
under the GNU General Public License; this archive contains complete THINK C
source code and project files for the INIT. If you do not have FTP access,
e-mail the author for a copy of the INIT, the source code, or a list of other
programs by the same author. The address is f8dy@netaxs.com.
This archive contains both THINK C 5 and THINK C 6 project files. Use
whichever one you wish and throw away the other.
This code demonstrates the basics of INIT initialization and loading,
shutdown procedures, and basic graphics work. This code should work under
any system, with any monitor, on all Macintoshes. Please report any
bugs/comments/suggestions to f8dy@netaxs.com.
Shutdown FX 1.3 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### TEXT simplify-list-manager-pas.txt ****
From: kurisuto@BACH.UDEL.EDU ("Sean J. Crist")
Subject: More free code: Simplifying the List Manager
Date: 18 Sep 92 03:33:13 GMT
The following code, once again, is nothing particularly glamorous; it
simply makes it easier to use the List Manager to create and manage lists
of strings. One of the most common uses for the List Manager is
scrollable, one-dimensional, fixed-size
lists of strings (as in SFGetFile, SFPutFile). The List Manager is good
for creating all kinds of lists (such as lists of icons), but a lot of
this functionality is a hassle for programmers who only need a simple list
of strings.
The code below allows you create and dispose of lists of strings. It
allows you to add, rename, and remove elements in the list, and handles
mouse clicks and update events. It also keeps the lists in alphabetical
order.
I remember having a lot of trouble learning how to call the List
Manager properly; I hope that this code helps somebody else.
#### TEXT sitcomm-login-as.txt ****
From: harrym@netcom.com (Harry Myhre)
Subject: SITcomm AppleScript
Date: Tue, 7 Dec 1993 18:13:15 -0800 (PST)
Language: AppleScript 1.0
Author: Harry Myhre <harrym@netcom.com>
Date Written: Tue, Dec 7, 1993
Purpose: Start SITcomm, logon to Netcom, get into dl directory,
ask user what to do next.
tell application "SITcomm"
activate
Connect "Netcom" -- dial into Netcom
Wait For Text "etcom" -- last part of command prompt
Send Text "go ~" -- first, go to home dir
Send Text return
Send Text "go dl" -- go to my download dir
Send Text return
end tell
#### TEXT skim-c.txt ****
Date: Thu, 25 Nov 93 18:06:58 +1300
From: Craig Nevill-Manning <cgn@kauri.cs.waikato.ac.nz>
Subject: Update on info-mac uploads browser
This is a new version of skim.c, a C program to ease the process of
downloading programs listed in the info-mac digest.
The latest modifications allow the site to be changed to a mirror site, and
the directory accordingly. Thanks to Robert Watkins (bob@nutmeg.cs.ntu.edu.au)
for these additions!
-------------------------- CUT HERE ------------------------------------------
/* To compile this program, first modify the #defines. You have to choose the
local directory to be used and to set your e-mail address.
You'll also have to add the directory to look into at the mirror site
Then compile with cc -o skim skim.c -lcurses -ltermcap
#### BINHEX sleep-deprivation-10-c.hqx ****
From: f8dy@netaxs.netaxs.com (Mark Pilgrim)
Subject: Sleep Deprivation 1.0 (source code)
Date: Sat, 13 Nov 1993 02:26:02 -0500 (EST)
Sleep Deprivation is a fun little INIT which will clear the screen with
a cool graphic effect every time your Macintosh goes to sleep. Of course,
this means you have to have a Mac which can go to sleep, like a Powerbook
or a Duo or the like. If you do, just slip this INIT in your system
folder and restart. 8 effects in all.
This INIT is free and is distributed under the GNU General Public License.
You may modify this code and rerelease it under the terms of the GNU
General Public License; read the file "GNU General Public License" in this
archive for details.
This archive contains complete THINK C 6.0.1 source code and project
files. If you do not have FTP access, e-mail the author requesting a
copy of the INIT, the source code, or a list of other programs by the
same author. The address is f8dy@netaxs.com. You may report bugs,
suggestions, comments, etc. to the same address.
Sleep Deprivation 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group
#### BINHEX sound-at-random-c.hqx ****
Date: Wed, 3 Nov 93 11:42:50 -0600
From: oleg@ponder.csci.unt.edu (Kiselyov Oleg)
Subject: sound-at-random.cpt - (source & bin) pick a sound at random and yell it
What: pick a sound at random and play it
Language: Symantec C++ 6.0
Note: Good (I hope) example of treating File and Drive managers as C++ objects
Note: Good as a startup program.
Note: needs standard environment, see myenv-notify.cpt
Note: sounds themselves are _not_ included, get your own
System: System 7.x, 32-bit clean
Contents:
RandomSound.cc - source code (commented)
vRandomSound.cc - verification program
RandomSound.pi - Symantec C++ project
RandomSound - application itself. 32-bit clean, System 7
Comments to: oleg@ponder.csci.unt.edu, oleg@unt.edu
Explanation:
This is a whimsy set of functions that lets one play a sound
picked at random from the sound folder. The sound folder is
assumed to be a folder named "Sounds" in the System folder.
[Note, reading STR resource mentioned in the comments is not implemented yet]
------------------------------------------------------------------------
#### BINHEX speech-manager-explorer.hqx ****
From: Alexander W. Kourakos <kourakos@cardinal.ncsc.org>
Subject: source/c - Speech Manager demo program
Date: Wed, 18 Aug 93 13:09:18 EDT
Organization: North Carolina Supercomputing Center
This is a quick little program I hacked together the day I FTP'd
the Speech Manager. Lets you play with voices, set pitch and rate,
etc. Written in THINK C 6.0.
Archived with StuffIt. Should work on any Mac that can use the
Speech Manager.
----------------------
#### BINHEX speech-unit-p.hqx ****
From "PAUL M SHELDON <psheldon@utdallas.edu>" Thu Sep 2 10:50:08 1993
Date: Thu, 2 Sep 1993 10:23:13 -0500
From: PAUL M SHELDON <psheldon@utdallas.edu>
Subject: my speech object (5 hours small unit, I'm getting better)
--1426085571-978700603-746985779:#3021
Content-Type: TEXT/PLAIN; charset=US-ASCII
I didn't have help in c translation to pascal from the kid I mentor, PJ
Traue, this time, so there are definite guesses in pascal meaning of c.
In this archived submission are four mpw text files. I have
included interface and implementation of the speech unit, my old code segment
that doesn't use the unit and a new code segment which does.
I noted that the new code segment that uses the unit must also have a
uses speech or it won't know the meaning of a type, SpeechChannel. That's
odd, since I tried not having uses all the way up the hierarchy of calling
routines and the object oriented pascal language only caught me there. I am
curious as to when I can get away with not using uses items; I am curious
as to how much is, as they say in modula language, hidden import.
This speech unit works, but may have mistakes in particular in the
Gestalt manager call pascal interpretation of the c code written up in the
apple docviewer document on speech manager. Maybe the kid I mentor will
correct my translation. Maybe someone out there will. I also have Halts to
handle os errors. I think that is sort of lame, because I don't insure that
all objects are free'd with such a handling. Someone more savvy than could
improve on this, for sure.
I did several experiments with the unit. You will see my earlier (working)
experiments commented out. I wanted to see what a Boris with a Brenda echo
would sound like. It sounded like an incompetant translator, not like an
echo. There was a time delay, even when I didn't put it there from the
speech processing. A very short time for the Brenda echo, but noticeable.
If you use the same speaker object to speak concurrently, it cuts its own
speech off after an interceded delay. Evidentally, to have concurrent
speech, your program must seize a different channel.
What you can do with this:
With this as a unit in a text editor, you should be able to select
things you want to have the mac speak.
When you use this unit, you may discover a greater wisdom that I found
making it and improve upon it. For your courage, before I tried making
this primative thing, I thought it would take more than twice as long as
it did. It didn't, even though I was exhausted from other things I did
that day!
With this submission, you can get the feel of a boundary on how
long it takes pascal procedural code to be turned into a prototype unit
for an object.
--1426085571-978700603-746985779:#3021
Content-Type: APPLICATION/octet-stream; name="speechunitex.hqx"
Content-ID: <Pine.3.07.9309021159.A3021@sioux.utdallas.edu>
Content-Description:
#### BINHEX speedy-mouse-12-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Speedy Mouse 1.2 (source code)
Date: Sat, 18 Dec 1993 00:13:34 -0500 (EST)
Speedy Mouse is a fun little INIT which will cause your mouse to move
twice as fast as it normally does. This INIT is free and is distributed under
the GNU General Public License; this archive contains complete THINK C 6.0.1
source code and project files for the INIT. If you do not have FTP access,
e-mail the author for a copy of the INIT, the source code, or a list of other
programs by the same author. The address is f8dy@netaxs.com.
Changes in version 1.2: the mouse no longer bounces off the edge of the
screen, and the cursor disappears correctly now while you are typing. Also,
the mouse will move at normal speed while the caps lock is down.
This code demonstrates the basics of writing and installing a VBL, and
manipulating undocumented low-memory globals. I used to say that this code
would work on any Mac, but that has proved not to be true. If you have any
compatibility problems, please report them to me at f8dy@netaxs.com. Many
helpful users all over the world have provided feedback that has helped me
advance Speedy Mouse this far.
Speedy Mouse 1.2 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### BINHEX spin-cursor-101-c.hqx ****
Date: Fri, 11 Sep 92 16:52:32 GMT-0500
From: rudman@mondo.engin.umich.edu
Subject: [*] SpinCursor Library 1.01
NOTICE: This should replace the older version of the library
This is the SpinCursor library, AGAIN ... UGH.
Some of you may have already noticed there was no protection against
installing more than once, and so the cursor jumped all over the place
before finally dying a horribly yucky death. I installed a global variable
called gCursInstalled, and this will fix it; now you can call
BeginSpinning() and StopSpinning() without worry as to what will happen.
Some notes for first-time users (read: people unaware of what a VBL task
can do)
o VBL-based spinning cursors will probably continue to spin even after the
Macintosh has crashed. During true Mac crashes, however, the cursor
will
not MOVE anywhere, it will just spin. Good? Bad? You be the judge.
o It would be a nice gesture for you to call StopSpinning() if you receive
a suspend event, and then BeginSpinning() (if necessary) when you
receive
the resume event. Otherwise, you may be "giving the gift of spinning
love"
to other processes; this is defined in the dictionary as "NOT NICE".
o Before you allow a user to quit your program, you should issue a
StopSpinning() just to be on the safe side. Otherwise, the VBL will
remain in memory, and it will attempt to JMP to a CODE which is no
longer
available. Can we say "crash" boys and girls? I knew you could...
o Some people are very, very accute, and they have noticed some small
flicker
in the spinning cursors. This is because the calls to SetCursor are NOT
always called in sync with the actual monitor vertical retrace. I will
be
working on this; in the mean time, it's just a SMALL flicker, more
noticeable
on machines with nice big 16" screens.
o Okay, here's the scoop: SetCursor DOES NOT MOVE MEMORY under these
conditions. SetCCursor MIGHT, however. Nobody at Apple was willing to
try
and put a color example into the new Inside Macintosh line of books, so
I
thought OK, I will. According to someone who sounds like they know, the
color cursor call has a 0.1% chance of failing. I say, Hell... I lock
everything and do the best job I can of keeping things from moving. I
guess
with something as sick as a VBL, anything can happen; but I say it's
safe.
If you have any comments, questions, or suggestions, please feel free to
send me mail personally (no, you don't have to voice your opinions over the
net ;) )
send to: rudman@engin.umich.edu
--------------------------------------------------------------------------
Daniel E. Rudman
The University of Michigan
Computer-Aided Engineering Network
Macintosh Systems Administration
#### BINHEX spinning-cursor-c.hqx ****
From: casgrain@ERE.UMontreal.CA (Casgrain Philippe)
Subject: Spinning Cursor Library (code)
Date: Fri, 5 Feb 93 13:49:55 EST
This posting contains a library file that allows any
program (C, Pascal, Fortran) to install an asynchronous
(task-independent) spinning cursor.
It is blatantly copied from the book "Macintosh Programming
Secrets, 2nd Edition", and distributed with the author's
consent. All I did (!) is type the code. I can also tell you
that it works fine ;-).
Instructions, source code (Think C) and sample code (Pascal
and C) are included. If you have questions, feel free to ask!
Philippe Casgrain
Casgrain@ERE.UMontreal.CA
P.S. This is postcard-ware: it is not my intellectual property,
but if I stick the disk on my fridge, my kids don't see the
point... :-)
#### BINHEX standard-get-folder-10-c.hqx ****
From "cklarson@rosarita.engr.ucdavis.edu (Christopher Klaus Larson)" Sun Aug 22 21:58:06 1993
Date: Sun, 22 Aug 93 15:57:04 PDT
From: cklarson@rosarita.engr.ucdavis.edu (Christopher Klaus Larson)
Subject: StandardGetFolder10.cpt.hqx
StandardGetFolder 1.0 by Chris Larson (cklarson@engr.ucdavis.edu)
This is the source code for a module which allows a user to select a folder
via the standard file package. It is more complete and error-free than the
other samples which perform this function (IMHO).
Requires THINK C (written with version 6.0) and System 7 or later.
Examples included.
#### BINHEX startup-screen-picker-11-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Startup Screen Picker 1.1 (source code)
Date: Tue, 14 Dec 1993 19:06:04 -0500 (EST)
[Sumex moderators: please archive this in /info-mac/dev/src directory.]
Startup Screen Picker is an INIT which will pick a random startup screen to
be displayed during at startup, during INIT loading. This INIT is free and
is distributed under the GNU General Public License; this archive contains
complete THINK C 6.0.1 source code and project files for the INIT. If you
do not have FTP access, e-mail the author for a copy of the INIT, the source
code, or a list of other programs by the same author. The address is
f8dy@netaxs.com.
This code demonstrates the basics of INIT writing, file moving (through
PBCatMove), preference files, and using the Notification Manager. This code
should work under any system, with any monitor, on all Macintoshes. Please
report any bugs/comments/suggestions to f8dy@netaxs.com.
Startup Screen Picker 1.1 is copyright 1993, Mark Pilgrim, MerriMac Software
Group.
#### BINHEX std-get-folder-c.hqx ****
Date: Sat, 6 Jun 92 21:31:06 CDT
From: Kenneth B. Kirksey <kkirksey@eng.auburn.edu>
Subject: Standard Get Folder C Code
The Think C code in this archive implements a custom Standard File Dialog
that allows users to select folders in which to save or locate files.
All code and resources you need to use StandardGetFolder are included. Also
included is a small sample program (in Think C) demonstrating the use of
StandardGetFolder.
Due to the fact the StandardGetFolder makes use of the CustomGetFile toolbox
function and FSSpec records, it will only work under Sytem 7.0 or later.
#### BINHEX stoned-mouse-10-c.hqx ****
From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Stoned Mouse 1.0 (source code)
Date: Sat, 13 Nov 1993 23:38:48 -0500 (EST)
Stoned Mouse is a fun little INIT which will cause your mouse to move
discretely instead of continuously, which I find breathtakingly disconcerting.
This INIT is free and is distributed under the GNU General Public License;
this archive contains complete THINK C 6.0.1 source code and project files
for the INIT. If you do not have FTP access, e-mail the author for a copy of
the INIT, the source code, or a list of other programs by the same author.
The address is f8dy@netaxs.com.
This code demonstrates the basics of writing and installing a VBL. This code
should work under any system, with any monitor, on all Macintoshes. Please
report any bugs/comments/suggestions to f8dy@netaxs.com.
Stoned Mouse 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
#### BINHEX streamer-c.hqx ****
Date: Fri, 30 Apr 1993 14:17:32 -0700 (PDT)
From: HOWELL@UPS.EDU (JON)
Subject: Streamer.hqx
Here's the source to Bill's streamer, a little backup program for QIC24
streaming tape drives and such. I took it home and compiled it, and
discovered this version waits indefinately for devices that don't exist
on the bus. (while(); sorts of loops in scsi.c) After I fixed that to
timeout, it seems to work right. It's pretty basic -- tiny interface,
very little error handling (though error checking stuff is in place),
but this is how he sent it.
I intend to upgrade it a bit, and when I do, I'll send it in. Bill
said it is to be under the usual copyleft freeware sort of arrangement
-- distribute it, but it remains his property. (don't sell it.)
(thanks, Bill!)
--Jon
----
Here it is (a bit of a mess I'm afraid - kind of in between versions -
so if you can't get it to compile properly, get back to me). It's a
binhexed stuffit file, so you should be able to unpack everything OK.
I've not bothered to split it up into little pieces since most mailers
seem to be able to cope nowadays.
If it does get to you OK, then please let me know (and yes, do forward
it to macgifts)
Have fun!
Bill
#### BINHEX suntar-132-c.hqx ****
From: speranza@cirfid.unibo.it (Sauro Speranza)
Subject: UPLOADING suntar1.3.2src.cpt.hqx
Date: Tue, 3 Nov 92 13:37:09 MET
[Source cdode for sun tar application uploaded the other day -- Gordon]
#### BINHEX surfer-c.hqx ****
From: rew8422@ultb.isc.rit.edu (R.E. Wilhelm )
Subject: Think C commToolbox stuff
Date: Sun, 3 May 92 20:56:01 EDT
Dear Moderators,
This archive contains the source code for a program called Surfer,
which is a demo of the Macintosh Communications Toolbox. Also included
are some libraries and interfaces that work with Think C 4.0(Think c 5
include these files). The program compiles under Think C 4.0. I'm not
smart enough to get it to work under version 5.0:) but I'm sure it can
be done. Enjoy.
Surfer was originally a Pascal program release by Mac DTS for MPW
Pascal.
Ron Wilhelm
rew8422@ultb.ics.rit.edu
----------8<--------------------------8<------------------------8<---------
#### BINHEX talk-106-pas.hqx ****
Date: Sat, 25 Apr 1992 13:07:01 +0800
From: Peter N Lewis <peter@cujo.curtin.edu.au>
Subject: source/pascal/talk-106-source.hqx
This is the source code for Talk v1.0.6 & Talkd v1.0.6.
Talk and talkd is an implementation of the UNIX Talk protocol for
Macs with MacTCP. Talkd is a background only application
that notifies you when a talk connection is requested, and Talk is a
talk client, allowing you to talk to other machines. Both are System 7
friendly (but hopefully not dependent).
Talk&Talkd are Povertyware, which basically means you get to send me five
dollars if you can. The source code may be used for any non-commertial
purposes as long as I get a mention in the about box and documentation
of any derivative program.
Hope you like them,
Peter. <peter@cujo.curtin.edu.au>
Talk 1.0.6 & Talkd 1.0.6 Copyright 1992, Peter N Lewis
#### BINHEX talking-clock-10b1-c.hqx ****
From macmod Thu Aug 26 20:12:40 1993
Date: Fri, 27 Aug 93 01:06:08 +0200
From: d88-jwa@nada.kth.se
Subject: Talking Clock - Source Code! 1.0b1
For those of you more interested in the "why" than the "because,"
here comes source code for Talking Clock. It is structured so
is can work as a minimalistic application shell as basis for your
own applications, with a less than 10K overhead for windows and menu
management! Read the license; it's freeware.
/ h+
--
-- Jon W{tte, h+@nada.kth.se, Mac Hacker Deluxe --
What we need is a good GNU [...] licence manager implementation.
-- Raphael Manfredi
talking-clock-source.cpt.hqx
#### BINHEX talking-clock-pro-c.hqx ****
Date: Sat, 4 Sep 93 20:46:34 +0200
From: d88-jwa@nada.kth.se
Subject: Talking Clock Pro(tm) Source Code
For those in need of a simple platform to build an application upon,
or simply wanting to see how to implement an AppleScript-savvy talking
clock faceless background extension, I present:
The Source.
Cheers,
/ h+
--
-- Jon W{tte, h+@nada.kth.se, Mac Hacker Deluxe --
Hackers push all the right buttons.
#### BINHEX task-manager-221-c.hqx ****
Date: 22 Jun 92 10:31:23 U
From: "Michael Hecht" <michael_hecht@mac.sas.com>
Subject: Task Manager 2.2.1
Regarding Task Manager 2.2.1
The Task Manager is a C source code package for creating and managing
tasks--separate execution threads that run nonpreemptively in the background.
Tasks should periodically call a Task Manager yielding routine to allow other
tasks to run. Tasks are ideal for lengthy processes that you would like to run
in the background, since the task runs in a separate execution thread from your
event loop.
--Michael
=======================================================================
Michael P. Hecht | Internet: Michael_Hecht@mac.sas.com
SAS Institute Inc.; Cary, NC USA | AppleLink: SAS.HECHT
#### BINHEX task-manager-pas.hqx ****
Date: Tue, 24 Nov 1992 14:05:12 +0800
From: Peter N Lewis <peter@ncrpda.curtin.edu.au>
Subject: source/pascal/TaskManager-211P.hqx
_______________________________________________________________________
Peter N Lewis <peter@ncrpda.curtin.edu.au> Ph: +61 9 368 2055
The Task Manager
Version 2.2.1P
This software source package is Copyright 1990 91 by Michael Hecht.
All Rights Reserved. It may be freely distributed in source or object
code format; however, the source code may not be sold for profit or
charged for in any way.
The Task Manager is a package for creating and managing tasks-separate
execution threads that run nonpreemptively in the background. Tasks
should periodically call a Task Manager yielding routine to allow other
tasks to run. Tasks are ideal for lengthy processes that you would
like to run in the background, since the task runs in a separate
execution thread from your event loop.
Michael Hecht wrote The Task Manager using THINK C 5.0.1, and I
converted in to Pascal using THINK Pascal 4.0.1. The documentation
is unchanged from Michael's, so it refers to C prodcedure's, but
I'm sure you can figure it out.
Hope its useful to someone,
Peter. <peter@ncrpda.curtin.edu.au>
Task Manager v2.2.1P Copyright 1990-92 Michael Hecht
#### BINHEX tcl-terminalpane-10.hqx ****
Date: Tue, 17 Aug 1993 14:34:08 -0600
From: Eric Scouten <scouten@staff.tc.umn.edu>
Subject: /source/c/tcl-terminalpane-10.sit
The enclosed file is a source code snippet for Think C 6.0 and TCL. It
provides a basic 24*80 terminal display for use in terminal-style programs.
Handles basic display functions, but does not provide advanced terminal
emulation (i.e. does not include VT100).
Freeware. Copyright (C) 1993, Eric Scouten, FrostByte/Design.
Thanks for including it...
-Eric
---
Eric Scouten Internet: scouten@staff.tc.umn.edu
Student Affairs Research Bitnet: scouten@umnacvx
110 Morrill Hall * Univ of Minn Phone: +1 612 626 0746
Minneapolis, MN 55455 USA
"To start with, we must stop using students as the _escape_ goats." -Anon.
#### BINHEX tcp-interface-example-pas.hqx ****
Date: Thu, 10 Dec 1992 11:27:56 +0800
From: Peter N Lewis <peter@ncrpda.curtin.edu.au>
Subject: source/pascal/tcpexample.hqx
This is some example code to demonstrate the use of my TCP unis.
These units implement a relatively high level interface to MacTCP,
and allow fairly easy writing of TCP applications in Pascal using
event driven programming. The example program is not a full shell,
it simply implements a very basic finger to a fixed user@host.
It should be fairly easy to understand. I've used the code in many
apps, most of which are available from various ftp sites, or from
redback.cs.uwa.edu.au in /others/peterlewis.
Hope its useful to someone,
Peter. <peter@ncrpda.curtin.edu.au>
TCPExample v1.0.0 Copyright 1992 Peter N Lewis
#### BINHEX tcp-oo-example-10.hqx ****
Date: Thu, 1 Jul 1993 15:07:21 +0800
From: Peter N Lewis <peter.lewis@info.curtin.edu.au>
Subject: source/pascal - TCPOOExample 1.0.0
This is some example code to demonstrate the use of my Object
Oriented TCP units. These units implement a relatively high level
interface to MacTCP, and allow fairly easy writing of TCP
applications in Pascal using event driven, object oriented
programming. The example program is not a full shell,
it simply implements a very basic finger to a fixed user@host.
It should be fairly easy to understand. I've used the code in many
apps, most of which are available from various ftp sites, or from
redback.cs.uwa.edu.au in /others/peterlewis.
Hope its useful to someone,
Peter. <peter.lewis@info.curtin.edu.au>
TCPOOExample v1.0.0 Copyright 1993 Peter N Lewis
#### BINHEX te32k-12-c.hqx ****
Subject: TE32K 1.2
Date: Sun, 7 Mar 1993 11:56:27 -0500
From: Roy Wood <rrwood@canrem.com>
Here is TE32K version 1.2, which should be archived as
/info-mac/source/c/te32k12.hqx
and replace the old te32k11.hqx version.
For the uninitiated, TE32K is a source-level replacement for the Mac
TextEdit package. TE32K allows for editing of files larger than 32K.
Changes in v1.2 are:
- old TE32KGetText routine returned original handle to text, not a copy;
fixed by replacing old code with code supplied by Patrick C. Beard
<beard@cs.ucdavis.edu>
- added colour highlighting support to invertSelRange as described by
Lee A. Fyock <laf@mbunix.mitre.org>
- added better double-click + dragging support with code supplied by
Lee A. Fyock <laf@mbunix.mitre.org> (this works *really* nicely)
So, as you can see, I have pretty much been reduced to custodian this time
around. =)
- Roy
--------------------- cut here ----------------------------
#### BINHEX tetris-light-c.hqx ****
From: Hoylen Sue <hoylen@central.sussex.ac.uk>
Subject: TetrisLight-src.cpt.hqx (Part 1/2)
Date: Fri, 13 Aug 93 12:35:26 BST
The following is a compact pro archive containing the Think C 5.0
sources for "Tetris Light". This is a lightweight Tetris program
with source code freely available under the GNU General Public
License.
---Beginning of Part 1/2---
#### BINHEX think-c-gamma-table-11-c.hqx ****
Date: Sat, 13 Mar 93 11:19:05 -0500
From: Matt Slot <fprefect@engin.umich.edu>
Subject: THINK C Gamma Fade Library v1.1
This is an update to an earlier posting of the same library, consisting
mainly of bug fixes and documentation updates.
Description: To do smooth fade in/out on Mac II machines, you can use
the enclosed library routines to adjust the color correction (gamma)
table of the connected monitors. These routines are programmer friendly,
and should run on any Mac II or later machine, under both system 7
and system 6. Enclosed is also a quick demo application.
If you have any questions or problems with this package, drop me mail. The
whole set is free to anyone interested.
fprefect@engin.umich.edu
Matt Slot, CAEN Mac-Systems
#### BINHEX think-c-various-c.hqx ****
Date: Sun, 29 Apr 90 13:05 +0200
From: F86_FREDRIK@fyvax2.fy.chalmers.se
Subject: Some useful code for THINK C 4.0
This is an archive of some code in THINK C 4.0 that I find
useful, and use in many of my programming projects.
Included are
* CInstance - A class to implement object persistence (i.e
a convenient way to use a preferences file).
* driver - A class upon which to build drivers and DAs in a
simple and convenient way.
* PasStrs - A number of functions that lets you have look-alikes
for the C string functions (e.g. strcat, strcpy, etc.) that
works with Pascal strings.
* A modified version of oops.c that includes a new function -
sizeofobj - that is used by the CInstance class.
I hope this proves useful to you. Enjoy!
(This is completely free.)
+-------------------------+--------------------------------+
| Sven Axelsson | d83_sven_a@tekno.chalmers.se |
| dep:t of Linguistics | (^^ best ^^) |
| univ. of Gothenburg | dlv_sa@hum.gu.se |
| SWEDEN | usdsa@seguc21.bitnet |
+-------------------------+--------------------------------+
--- cut here ---
#### BINHEX tools-plus-lib-21.hqx ****
Date: Mon, 22 Nov 1993 03:35:17 -0500
From: "Wayne K. Walrath" <walrath@cs.indiana.edu>
Subject: ToolsPlus C prog. libs 2.1
I downloaded this from Compu$erve a few nights ago. I have
no connection to the company, Water's Edge Software.
-wayne
walrathw@rferl.org
RFE/RL Inc.
>From one of the ReadMe files:
Tools Plus is a library of routines that simplifies programming an
Apple Macintosh computer, and significantly reduces the time it takes
to write and debug a program. With Tools Plus, you program at a much
higher level when creating, maintaining, and working with a
user-interface, so you can develop applications
more easily
more quickly
with less source code
with fewer bugs
and with more features
than if you use ordinary C or Pascal. Tools Plus libraries can be
used by programmers developing applications in THINK C or THINK
Pascal.
With Tools Plus, you can create and maintain a user-interface more
easily, without having to create elements yourself. Event handling is
dramatically simplified, and most of the processes that define a
Mac-standard interface are performed automatically.
Registered users get free support and a comprehensive, illustrated
180-page user manual, and may distribute programs created with Tools
Plus royalty-free.
Tools Plus performs seamlessly on Macintoshes runningI
System 5 (Finder or MultiFinder)
System 6 (Finder or MultiFinder)
System 7
This fully featured copy of Tools Plus is distributed at no cost as
Shareware. The purpose of this is to allow potential users to
EVALUATE the software before buying it. There are, however, terms and
conditions to using this product, even for the purpose of evaluation.
ShareWare price: 149.00 US$
#### TEXT unfolder-20-c.txt ****
Date: Wed, 20 Oct 1993 22:53:52 -0400 (EDT)
From: hshubs@BIX.com
Subject: Unfolder 2.0 source
This is the source code for Unfolder 2.0, so it might be named unfolder20.c,
and put in the same directory as unfolder20.hqx.
/*
* The Unfolder - program to reconstitute MacBinary (II) encoded files.
*
* by various BIXen in the 'mac.hack/tutorial', started on 25 December 1989
*
* Originally written by Don Sample, Howard Shubs, and Bob Perkins on
* the BYTE Information eXchange (BIX), this program is intended to allow
* people with a C compiler and no way to transfer resources to their Mac
* to create a way to deal with Mac files which have been downloaded to
* non-Macintosh hardware. This program will, when told to Unfold,
* reconstitute a MacBinary version 1 or 2 file to its original state.
*
* The program will work as-is under THINK C 5.0.2, with just the MacTraps
#### BINHEX video-toolbox-930518-c.hqx ****
Date: 18 May 1993 20:49:03 -0500
From: "Denis Pelli" <denis_pelli@isr.syr.edu>
Subject: VideoToolbox.93.5.18
Subject:VideoToolbox.93.5.18 8:19 PM 5/18/93
Please accept the enclosed submission to the info-mac and other Mac archives.
It replaces an older version in info-mac/source/c.
VideoToolbox.93.5.18.sit
May 18, 1993
The VideoToolbox is a collection of nearly two hundred C subroutines and
several demo and utility programs written to do visual psychophysics with
Macintosh computers. It's free and may not be sold without permission. It
should be useful to anyone who wants to present accurately specified visual
stimuli or use the Mac for psychometric experiments. The text file "Video
synch" discusses all the ways of synchronizing programs to video displays and
the many pitfalls to avoid. The TimeVideo application checks out the timing of
all video devices in anticipation of their use in critical real-time
applications, e.g. movies or lookup-table animation. The demos
FlickeringGrating and Sandstorm, among others, show how to generate visual
stimuli such as spatiotemporal sinusoids with gaussian envelopes in space and
time, and dynamic white noise. Low-level routines control video timing and
lookup tables, display real-time movies, filter images, and implement the
luminance-control algorithms suggested by Pelli and Zhang. (D.G. Pelli and L.
Zhang, 1991, Accurate control of contrast on microcomputer displays. Vision
Research, 31, 1337-1350. Reprints are available.) High-level routines help
analyze psychophysical experiments (e.g. graphing or maximum-likelihood fitting
of psychometric data). This collection has been continually updated since 1991.
Many colleagues have indicated that they are using the software in their labs.
Most of the routines are Mac-specific, but some very useful routines, e.g. the
luminance-control, statistics, and maximum-likelihood fitting algorithms, could
easily be ported to other computers.
Denis Pelli
Professor of Neuroscience
Institute for Sensory Research
Syracuse University
Syracuse, NY 13244-5290
denis_pelli@isr.syr.edu
CHANGES DURING 5/93:
oTimeVideo 2.5 tests all video devices on any Mac running System 6.05 or later.
It tests gray and color modes, and measures and reports the gray-mode
color-transformation matrix. It no longer assumes any particular correspondence
between the video mode number and the pixel size. Many small bug fixes.
oSetEntriesQuickly.c now respects the setting of the device's gray/color mode,
and maps to gray when appropriate. Changed prototype of macltset to
specify the red, green, and blue arrays as "unsigned short" instead of "short".
oLuminance.c: If the driver is in gray mode (i.e. not color) then
LoadLuminances maps rgb to gray by simply copying the green component to the
red and blue components.
oGDVideo.c: Changed GDPrintGammaTable() to accept a simple file pointer instead
of an array of two file pointers.
oGrabSlotDrivers now checks for the Slot Manager, in response to bug report by
Jonathan Brecher.
CHANGES DURING 4/93:
oUpdated all projects and "Read me".
oAdded explanation of tiling to PixMapToPostScript.c.
oGetPixBaseAddr32(PixMap **pm) returns the 32-bit address of the pixels/bits in
a pix/bitmap. In RectToAddress.c.
oSetEntriesQuickly.c no longer requires a 68020.
oMaximizeConsoleHeight.c now fully supports 1-bit QuickDraw.
oDeleted obsolete AddressToSlot and AddressToScreenDevice from
GetScreenDevice.c.
oMerged GDFrameRate.c and GDTimeClut.c to produce GDTime.c. Deleted obsolete
GDFramesPerClutUpdate, GDClutUpdateRate, and GDTimeClutUpdate.
oTimeVideo will test all video devices on any Mac running System 6.05 or later.
It tests gray and color modes, and measures and reports the "gray"
color-transformation matrix. It no longer assumes any particular correspondence
between the video mode number and the pixel size.
oGDCOLORS(device) is gone because its answer was misleading when in 16-bit or
32-bit mode. Instead, use either GDClutSize(device) or GDColors(device), in
GDVideo.c, but take care to choose the right one, since they're not equivalent
when in more-than-8-bit modes.
oGDVideo.c: Removed assumption, in all routines, that there is any particular
correspondence between the video mode number and the pixel size. New
GDHasMode(device,mode,&pixelSize,&pages) tells you whether a particular video
mode is supported by your video device. Added GDPrintGammaTable(). Deleted
GDModeName().
CHANGES DURING 3/93:
oMade RectToAddress compatible with the initial versions of 32-bit QuickDraw,
in which GetPixmapBaseAddr() did not work.
oEnhanced TimeVideo, producing a more comprehensive and intelligible report,
and subsuming the former TestCluts, which is now gone.
o GDSetEntriesByType(device,...) checks the (**device).gdType field and calls
GDSetEntries, GDDirectSetEntries, or nothing, as appropriate. In GDVideo.c.
oGDSetEntriesByTypeHighPriority does the same, but at high processor priority,
forcing the driver to behave synchronously. In GDVideo.c.
oGDInfo.c collects useful information about a video device. In GDVideo.c
oIdentifyVideo(device) returns a descriptive C string. In Identify.c,.
oAdded the constant MAX_SCREENS=8 to VideoToolbox.h
oGDSaveGamma(device) saves a copy that GDRestoreGamma(device) later uses to
restore the gamma table. In GDVideo.c.
oAdded UnclipScreen(device), RestoreScreenClipping(device),
SquareCorners(device), and RestoreCorners(device) to HideMenuBar.c, to extend
the clipping region to include the WHOLE screen.
oGDOpenWindow/GDDisposeWindow call GDSaveGamma/GDRestoreGamma and
UnclipScreen/RestoreScreenClipping.
CHANGES DURING 2/93:
oFixed endless loop in PatchMacIIciVideoDriver in GDVideo.c that hung up any
program that called GDGetEntries, including the demos TestGDVideo and
TestSetEntriesQuickly.
oEnhanced PatchMacIIciVideoDriver to deal with ROM- as well as RAM-based video
drivers.
oFixed SetEntriesQuickly to work correctly on Toby Video Card, Macintosh
Display Card 8o24, and to work in 16-bit mode on Quadra.
oVideoToolbox.c explains how to create a precompiled header, for tenfold faster
compiles.
oGreatly increased the number of headers included by VideoToolbox.h, so that
most C files can now include just the VideoToolbox.h header.
oAdded tiny new demo, Grating.c, that shows how to load the clut and display a
grating.
oAdded SetPixelsQuickly.c to quickly peek or poke a row of pixels, bypassing
the color tables. It's more than ten times faster than using SetOnePixel.c,
which is now obsolete. This is the fastest way to get at the pixels in an
image, for image processing or synthesis. Works with bitmaps and pixmaps and
any size of pixel. Try the demos Grating and FlickeringGrating.
oGDOpenWindow now creates a full-screen window even on the main screen.
oAdded window=GDOpenWindow1(device) and GDDisposeWindow1(window), which work
with a WindowPtr instead of a CWindowPtr, for less hassle with casting.
oAddExplicitPalette(window), in GDOpenWindow.c, adds a palette with all colors
marked as explicit, so that you can use PmForeColor and PmBackColor to specify
literally what numbers you want to put into your pixels in drawing operations
like EraseRect() and DrawString().
oAdded PrintfExit.c, which prints out an error message and exits. Replaced all
calls to exit() in the VideoToolbox by calls to this routine, so many projects
will need to add it.
oRequire(), in PrintfExit.c, tests for any required fpu, cpu, and version of
QuickDraw, and fails gracefully if they're absent.
oAll demos now call Require() in PrintfExit.c to test for presence of any
required fpu, cpu, and version of quickdraw, instead of crashing.
oEnhanced GDUncorrectedGamma() in GDVideo.c to work correctly with video
devices that use any version of the gamma table. This might have caused
TestCluts to report spurious driver errors.
oReplaced IdentifyCompiler.c and IdentifyMachine.c by the new Identify.c. Added
IdentifyVideo(device) and IdentifyModel().
oRenamed TestSetEntriesQuickly to TestCluts, and enhanced it to save detailed
results in file.
oEnhanced CopyBitsQuickly to return a nonzero int if an error occurred.
oAdded an image-multiplication mode to CopyBitsQuickly, and enabled it on
2/18/93.
oAdded SwapPriority() to SetPriority.c, to be used just like SwapMMUMode().
oConvolveX.c now rounds to nearest integer, and supports 32-bit video
addressing.
oRenamed the file MatLab.c to ReadMatLabFile.c, though the functions themselves
are unchanged.
oIntroduced MATLAB conditional into VideoToolbox.h, to support creation of
MatLab external code resources, as implemented by David Brainard.
<<<<<< Attached TEXT file follows >>>>>>
#### BINHEX voyeur-10-c.hqx ****
From: f8dy@netaxs.netaxs.com (Mark Pilgrim)
Subject: Voyeur 1.0 (source code)
Date: Thu, 11 Nov 1993 12:28:14 -0500 (EST)
Voyeur 1.0 is a no-frills file viewer. It allows you to view raw data (in
hexadecimal and ascii format) of either the data or resource fork of a
file. You can't edit any of the information, but you can change the
type/creator information or modify the length (EOF) of either fork.
Voyeur is distributed under the GNU General Public License; this
archive contains complete THINK C 6.0.1 source code for the Voyeur
application, as well as complete source code for an external application
used to set up Voyeur's self-integrity checker. You may freely re-
distribute this package as a whole; you may freely modify this application
and re-distribute it under the GNU General Public License. See the file
"GNU General Public License" in this archive for details.
This code handles, among other things, events, menus, apple events, a prefs
file, Gestalt environment checking, hierarchical menus, dialogs, windows,
standard file dialogs, and the soon-to-be-famous "cough to continue" modal
dialog filter proc. None of this is very well commented, but feel free to
direct any questions to f8dy@netaxs.com.
Voyeur 1.0 is copyright 1993 by Mark Pilgrim, MerriMac Software Group.
#### BINHEX wdef-patch-21-c.hqx ****
From: ROBERTO AVANZI 338188/SM <gandalf@sabrina.dei.unipd.it>
Subject: WDEF PAtch from apple:further changes
Date: Mon, 22 Jun 92 11:18:03 GMT
Hi, netters
WDEFPatch is an Apple sample code snippet that shows how to
add in a clean way a new behaviour to an existing WDEF. It adds
a new part in the window title bar that, when clicked, is reported
to the application. I implemented the tracking of that part.
In case you downloaded the improved WDEFPatch (originally from
Steve Falkenburg), in the meantime I discovered a funny quirk
in the system software WDEF. (at least, sys 7's). I found it
when adding a zoom box to the window. Falkenburg's had not, neither
did my original improvement. It can only be the system's misbehaviour
but luckily a workaround could be found very easily (and is clean).
I included the two apps. The one without workaround and one with it.
Read the source for details. Then laugh when you see what happens.
I feel my new knowledge can be useful also to others.
Enclosed is a binhexed-compactpro archive.
Roberto Avanzi.
<gandalf@sabrina.dei.unipd.it>
#### BINHEX welcome-132.hqx ****
From: IO92143@MAINE.maine.edu (Donna Foster)
Subject: Welcome! v1.3.2
Date: Tue, 14 Dec 93 22:58:49 EST
Enclosed is the app and source for Welcome, an app which uses the Speech
Manager to read you the date, time, and a short message. (Run it between 6
and 12 on the 24th of December for a sample...) It's based on Welcome2,
an old app which used MacinTalk. If the author is out there somewhere, I'd
be happy to credit you....
Version 1.3.2 fixes two bugs--one appeared the week of Thanksgiving, when I
forgot to check whether I had typed == or =, and one appeared October 31,
when nothing happened. :-) This version is postcardware. Version 2.0, coming
out soon, will be customizable with ResEdit. Version 3.0, if ever, will let
you do it from within the program....
#### BINHEX writeswell-jr-102-c.hqx ****